]> gitweb.factorcode.org Git - factor.git/blob - library/test/math/rational.factor
complex numbers in native factor, all of test suite except html and httpd tests runs...
[factor.git] / library / test / math / rational.factor
1 IN: scratchpad
2 USE: arithmetic
3 USE: kernel
4 USE: stack
5 USE: test
6
7 [ t ] [ 0 fixnum? ] unit-test
8 [ t ] [ 31415 number? ] unit-test
9 [ t ] [ 31415 >bignum number? ] unit-test
10 [ t ] [ 2345621 fixnum? ] unit-test
11
12 [ t ] [ 2345621 dup >bignum >fixnum = ] unit-test
13
14 [ t ] [ 0 >fixnum 0 >bignum = ] unit-test
15 [ f ] [ 0 >fixnum 1 >bignum = ] unit-test
16 [ f ] [ 1 >bignum 0 >bignum = ] unit-test
17 [ t ] [ 0 >bignum 0 >fixnum = ] unit-test
18
19 [ t ] [ 0 >bignum bignum? ] unit-test
20 [ f ] [ 0 >fixnum bignum? ] unit-test
21 [ f ] [ 0 >fixnum bignum? ] unit-test
22 [ t ] [ 0 >fixnum fixnum? ] unit-test
23
24 [ -1 ] [ 1 neg ] unit-test
25 [ -1 ] [ 1 >bignum neg ] unit-test
26
27 [ 9 3 ] [ 93 10 /mod ] unit-test
28 [ 9 3 ] [ 93 >bignum 10 /mod ] unit-test
29
30 [ 5 ] [ 2 >bignum 3 >bignum + ] unit-test
31
32 [ 1/2 ] [ 1 >bignum 2 >bignum / ] unit-test
33 [ t ] [ 10 3 / ratio? ] unit-test
34 [ f ] [ 10 2 / ratio? ] unit-test
35 [ 10 ] [ 10 numerator ] unit-test
36 [ 1 ] [ 10 denominator ] unit-test
37 [ 12 ] [ -12 -13 / numerator ] unit-test
38 [ 13 ] [ -12 -13 / denominator ] unit-test
39 [ 1 ] [ -1 -1 / numerator ] unit-test
40 [ 1 ] [ -1 -1 / denominator ] unit-test
41
42 [ -1 ] [ 2 -2 / ] unit-test
43 [ -1 ] [ -2 2 / ] unit-test
44
45 [ t ] [ 1 3 / 1 3 / = ] unit-test
46
47 [ -10 ] [ -100 10 /i ] unit-test
48 [ 10 ] [ -100 -10 /i ] unit-test
49 [ -10 ] [ 100 -10 /i ] unit-test
50 [ -10 ] [ -100 >bignum 10 >bignum /i ] unit-test
51 [ 10  ] [ -100 >bignum -10 >bignum /i ] unit-test
52 [ -10 ] [ 100 >bignum -10 >bignum /i ] unit-test
53
54 [ 3/2 ] [ 1 1/2 + ] unit-test
55 [ 3/2 ] [ 1 >bignum 1/2 + ] unit-test
56 [ -1/2 ] [ 1/2 1 - ] unit-test
57 [ -1/2 ] [ 1/2 1 >bignum - ] unit-test
58 [ 41/20 ] [ 5/4 4/5 + ] unit-test
59
60 [ 1 ] [ 1/2 1/2 / ] unit-test
61 [ 27/4 ] [ 3/2 2/9 / ] unit-test
62
63 [ t ] [ 5768 476343 < ] unit-test
64 [ t ] [ 5768 476343 <= ] unit-test
65 [ f ] [ 5768 476343 > ] unit-test
66 [ f ] [ 5768 476343 >= ] unit-test
67 [ t ] [ 3434 >bignum 3434 >= ] unit-test
68 [ t ] [ 3434 3434 >bignum <= ] unit-test
69
70 [ t ] [ 1 1/3 > ] unit-test
71 [ t ] [ 2/3 3/4 <= ] unit-test
72 [ f ] [ -2/3 1/3 > ] unit-test
73
74 [ t ] [ 1000000000/999999 1000 > ] unit-test
75 [ f ] [ 100000 100000000000/999999 > ] unit-test
76 [ t ]
77 [ 1000000000000/999999999999 1000000000001/999999999998 < ]
78 unit-test
79
80 ! JVM factor doesn't have >integer yet.
81 ! [ 3 ] [ 10/3 >integer ] unit-test
82 ! [ -3 ] [ -10/3 >integer ] unit-test
83
84 [ 100 ] [ 100 100 gcd ] unit-test
85 [ 100 ] [ 1000 100 gcd ] unit-test
86 [ 100 ] [ 100 1000 gcd ] unit-test
87 [ 4 ] [ 132 64 gcd ] unit-test
88 [ 4 ] [ -132 64 gcd ] unit-test
89 [ 4 ] [ -132 -64 gcd ] unit-test
90 [ 4 ] [ 132 -64 gcd ] unit-test
91 [ 4 ] [ -132 -64 gcd ] unit-test