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 1734


Ignore:
Timestamp:
2015-06-15T08:23:57-07:00 (10 years ago)
Author:
Marek Rychlik
Message:

* empty log message *

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/f4grobner/mx-grobner.lisp

    r1733 r1734  
    377377                                (poly-list-lists nil)
    378378                                (value-type nil))
    379                                &body body
    380                                &aux (vars (gensym))
    381                                  (new-vars (gensym)))
     379                               &body
     380                                 body
     381                               &aux
     382                                 (vars (gensym))
     383                                 (new-vars (gensym))
     384                                 (ring-and-order (gensym)))
    382385  `(let ((,vars (coerce-maxima-list ,maxima-vars))
    383386         ,@(when new-vars-supplied-p
     
    385388     (poly->maxima
    386389      ,value-type
    387       (let ((*ring-and-order* `(find-ring-and-order-by-name
    388                                 :ring ,$poly_coefficient_ring
    389                                 :order ,$poly_monomial_order
    390                                 ;; :elimination-order ,$poly_primary_elimination_order
    391                                 :primary-elimination-order ,$poly_secondary_elimination_order
    392                                 :secondary-elimination-order ,$poly_elimination_order)))
     390      (let ((,ring-and-order `(find-ring-and-order-by-name
     391                               :ring ,$poly_coefficient_ring
     392                               :order ,$poly_monomial_order
     393                               ;; :elimination-order ,$poly_primary_elimination_order
     394                               :primary-elimination-order ,$poly_secondary_elimination_order
     395                               :secondary-elimination-order ,$poly_elimination_order)))
    393396        (let ,(let ((args nil))
    394                        (dolist (p polynomials args)
    395                          (setf args (cons `(,p (parse-poly ,p ,vars)) args)))
    396                        (dolist (p poly-lists args)
    397                          (setf args (cons `(,p (parse-poly-list ,p ,vars)) args)))
    398                        (dolist (p poly-list-lists args)
    399                          (setf args (cons `(,p (parse-poly-list-list ,p ,vars)) args))))
    400               . ,body)))
     397                   (dolist (p polynomials args)
     398                     (setf args (cons `(,p (maxima->poly ,p ,vars ,ring-and-order)) args)))
     399                   (dolist (p poly-lists args)
     400                     (setf args (cons `(,p (maxima->poly-list ,p ,vars ,ring-and-order)) args)))
     401                   (dolist (p poly-list-lists args)
     402                     (setf args (cons `(,p (maxima->poly-list-list ,p ,vars ,ring-and-order)) args))))
     403          . ,body)))
    401404     ,(if new-vars-supplied-p
    402405          `(append ,vars ,new-vars)
Note: See TracChangeset for help on using the changeset viewer.