axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] Re: defintrf bug


From: Stephen Wilson
Subject: [Axiom-developer] Re: defintrf bug
Date: 09 Jul 2007 17:02:15 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

Hello again,

Stephen Wilson <address@hidden> writes:
[...]
> >    (|Record| 
> >      (|:| (QREFELT $$ 2) (|Fraction| (|Integer|)))
> >      (|:| (QREFELT $$ 1) (|Integer)))
> > expands to
> >    (|Record0|
> >      (LIST (CONS '|endpoint|
> >                  (|Fraction| (|Integer|)))
> >            (CONS '|dir| (|Integer|))))
> > 
> > this seems like a bug in the algebra code to me.
> > The function keeprec? expects a REC record with left and right indices
> > but "endpoint" and "dir" are the indices of a REC2:
> >   REC2 ==> Record(endpoint:Q, dir:Z)
> > so it doesn't seem valid to call keeprec? on a REC2 construct.
> 
> Nice catch.  But is this a bug in the algebra?

Looking at the code again, this is actually fine.  The code in
question is being passed to check-union.  The type expression is not
related to the argument to keeprec?, but rather to the dereferencing
of the halfinf branch in the Union object bound to `i'.  The code is
checking that "i.halfinf" (of type REC2) is valid.

At least its not another bug.

Cheers,
Steve







reply via email to

[Prev in Thread] Current Thread [Next in Thread]