|
|
last edited 16 years ago by japp |
1 2 3 4 5 6 7 | ||
Editor: kratt6
Time: 2007/12/05 06:44:02 GMT-8 |
||
Note: |
changed: - d := continuedFraction(0,[1 for i in 1..], [1 for i in 0..])$CONTFRAC INT - 2*d d := continuedFraction(0,[1 for i in 1..], [1 for i in 0..])$CONTFRAC INT 2*d
Consider
axiomd := continuedFraction(0,[1 for i in 1..], [1 for i in 0..])$CONTFRAC INT
(1) |
axiom2*d
(2) |
so far, so good. But changing the domain to CONTFRAC UP(x, FRAC INT)
makes axiom crash.
The problem appears to be, that INT
is ordered, while UP(x, FRAC INT)
is not. In contfrac.spad we find:
eucWhole(a: Q): R == numer a quo denom a eucWhole0(a: Q): R == isOrdered => n := numer a d := denom a q := n quo d r := n - q*d if r < 0 then q := q - 1 q eucWhole a
If R
is INT
, eucWhole0(4/3)
yields 1, in the other case it returns 4/3. I haven't been able to investigate further yet, though.
Martin