- Timestamp:
- 2016-06-01T17:33:20-07:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/f4grobner/buchberger.lisp
r1958 r4131 25 25 :criterion :pair-queue :priority-queue 26 26 ) 27 (:export "BUCHBERGER" "PARALLEL-BUCHBERGER")) 27 (:export "BUCHBERGER" "PARALLEL-BUCHBERGER") 28 (:documentation "Buchberger Algorithm Implementation.")) 28 29 29 30 (in-package :buchberger) 30 31 31 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32 ;;33 ;; Buchberger Algorithm Implementation34 ;;35 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36 32 37 (defun buchberger ( ring-and-orderf33 (defun buchberger (f 38 34 &optional 39 35 (start 0) … … 47 43 reduction will be preformed. This function assumes that all polynomials 48 44 in F are non-zero." 49 (declare (type ring-and-order ring-and-order) (typefixnum start))45 (declare (type fixnum start)) 50 46 (when (endp f) (return-from buchberger f)) ;cut startup costs 51 47 (debug-cgb "~&GROBNER BASIS - BUCHBERGER ALGORITHM") 52 48 (when (plusp start) (debug-cgb "~&INCREMENTAL:~d done" start)) 53 #+grobner-check (when (plusp start)54 (grobner-test ring-and-order(subseq f 0 start) (subseq f 0 start)))49 #+grobner-check (when (plusp start) 50 (grobner-test (subseq f 0 start) (subseq f 0 start))) 55 51 ;;Initialize critical pairs 56 (let ((b (pair-queue-initialize (make-pair-queue) 57 f start)) 52 (let ((b (make-critical-pair-queue f start)) 58 53 (b-done (make-hash-table :test #'equal))) 59 54 (declare (type priority-queue b) (type hash-table b-done))
Note:
See TracChangeset
for help on using the changeset viewer.