Changeset 4505 for branches/f4grobner/polynomial-sugar.lisp
- Timestamp:
- 2016-06-17T11:15:54-07:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/f4grobner/polynomial-sugar.lisp
r4504 r4505 5 5 the sugar value which does not assume that the object is a result of any prior calculations.") 6 6 (:method ((object monom)) 7 "Static sugar of a monom OBJECT is simply the total degree." 7 8 (total-degree object)) 8 9 (:method ((object poly)) 9 (with-slots (termlist) 10 "Static sugar of a poly OBJECT is the maximum sugar of its terms." 11 (with-slots (termlist) 10 12 object 11 13 (loop for trm in termlist maximize (sugar trm))))) … … 16 18 (defclass monom-with-sugar (monom sugar) ()) 17 19 20 (defmethod print-object ((self monom-with-sugar) stream) 21 (print-unreadable-object (self stream :type t :identity t) 22 (with-accessors ((exponents monom-exponents) (value sugar-value)) 23 self 24 (format stream "EXPONENTS=~A SUGAR=~A" 25 exponents value)))) 26 27 18 28 (defmethod shared-initialize :after ((self monom-with-sugar) slot-names &rest initargs &key) 19 29 "Initialize sugar value based on the exponents." … … 21 31 (setf (slot-value self 'value) (static-sugar self))) 22 32 33 (defclass term-with-sugar (term sugar) ()) 23 34 35 (defmethod print-object ((self term-with-sugar) stream) 36 (print-unreadable-object (self stream :type t :identity t) 37 (with-accessors ((exponents monom-exponents) (value sugar-value) (coeff term-coeff)) 38 self 39 (format stream "EXPONENTS=~A COEFF=~A SUGAR=~A" 40 exponents coeff value))))
Note:
See TracChangeset
for help on using the changeset viewer.