close Warning: Can't synchronize with repository "(default)" (The repository directory has changed, you should resynchronize the repository with: trac-admin $ENV repository resync '(default)'). Look in the Trac log for more information.

Changeset 4142


Ignore:
Timestamp:
2016-06-01T22:44:22-07:00 (8 years ago)
Author:
Marek Rychlik
Message:

* empty log message *

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/f4grobner/pair-queue.lisp

    r4139 r4142  
    108108  (with-slots (pair-key-fn pair-order-fn)
    109109      strategy
    110     (reinitialize-instance self
     110    (call-next-method self
    111111                           :element-type 'critical-pair
    112112                           :element-key #'(lambda (pair) (funcall pair-key-fn
     
    115115                           :test pair-order-fn)))
    116116
    117 (defgeneric enqueue-critical-pairs (self &optional poly-list start)
    118   (:method ((self critical-pair-queue) &optional (poly-list nil) (start 0))
    119     "The argument POLY-LIST should the initial list of
     117(defun make-critical-pairs (poly-list &optional (start 0)
     118                            &aux
     119                              (s (1- (length poly-list))))
     120  "The argument POLY-LIST should the initial list of
    120121polynomials.  and START is the first position beyond the elements
    121122which form a partial Grobner basis, i.e. satisfy the Buchberger
    122123criterion."
    123     (let* ((s (1- (length poly-list)))
    124            (b (nconc (makelist (make-instance 'critical-pair :first (elt poly-list i) :second (elt poly-list j))
    125                                (i 0 (1- start)) (j start s))
    126                      (makelist (make-instance 'critical-pair :first (elt poly-list i) :second (elt poly-list j))
    127                                (i start (1- s)) (j (1+ i) s)))))
     124  (nconc (makelist (make-instance 'critical-pair :first (elt poly-list i) :second (elt poly-list j))
     125                             (i 0 (1- start)) (j start s))
     126                   (makelist (make-instance 'critical-pair :first (elt poly-list i) :second (elt poly-list j))
     127                             (i start (1- s)) (j (1+ i) s))))
     128#|
     129
    128130      (dolist (pair b self)
    129131        (enqueue self pair)))))
     132|#
    130133
    131 
Note: See TracChangeset for help on using the changeset viewer.