Mercurial > hg > jgplsrc
comparison test/gxinf.ijs @ 0:e0bbaa717f41 draft default tip
lol J
author | Jordi Gutiérrez Hermoso <jordigh@octave.org> |
---|---|
date | Mon, 25 Nov 2013 11:56:30 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e0bbaa717f41 |
---|---|
1 NB. x: and infinity ----------------------------------------------------- | |
2 | |
3 match=: -:&(3!:1) | |
4 xi =: x:^:_1 | |
5 | |
6 ( 64=type x), 5 _ -: x=: 5x _ | |
7 ( 64=type x), 5 _ -: x=: 5r1 _ | |
8 | |
9 (128 -: type x), _ 1r2 match x=:x: _ 0.5 | |
10 (128 -: type x), __ 1r2 match x=:x: __ 0.5 | |
11 | |
12 (8 -: type x), _ __ 225 match x=:xi _ __ 225x | |
13 (8 -: type x), _ __ 2 match x=:xi _ __ 2x | |
14 (8 -: type x), _ __ 0.5 match x=:xi _ __ 1r2 | |
15 | |
16 0r1 -: 5r_ | |
17 0r1 -: _5r_ | |
18 | |
19 'ill-formed number' -: ex ' _r_ ' | |
20 'ill-formed number' -: ex ' _r__' | |
21 'ill-formed number' -: ex '__r_ ' | |
22 'ill-formed number' -: ex '__r__' | |
23 | |
24 | |
25 NB. infinite integers and rationals and comparatives -------------------- | |
26 | |
27 _ 5x = _ 5x | |
28 __ 5x = __ 5x | |
29 _ 5r1 = _ 5r1 | |
30 __ 5r1 = __ 5r1 | |
31 _ 5x = _ 5r1 | |
32 __ 5x = __ 5r1 | |
33 | |
34 0 0 -: _ 2x = 99999x | |
35 0 0 -: _ 2x = _99999x | |
36 0 0 -: __ 2x = 99999x | |
37 0 0 -: __ 2x = _99999x | |
38 | |
39 pinf=: {. _ 5x | |
40 ninf=: {. __ 5x | |
41 | |
42 pinf > ninf | |
43 pinf > _99999x | |
44 pinf > - 10^100x | |
45 pinf > 0x | |
46 pinf > 99999x | |
47 pinf > 10^100x | |
48 | |
49 ( 10^100x) > ninf | |
50 99999x > ninf | |
51 0x > ninf | |
52 _99999x > ninf | |
53 (- 10^100x) > ninf | |
54 | |
55 -. pinf > pinf | |
56 -. ( 10^100x) > pinf | |
57 -. (-10^100x) > pinf | |
58 -. ninf > pinf | |
59 -. ninf > 0x | |
60 -. ninf > ninf | |
61 | |
62 pinf >: ninf | |
63 pinf >: _99999x | |
64 pinf >: - 10^100x | |
65 pinf >: 0x | |
66 pinf >: 99999x | |
67 pinf >: 10^100x | |
68 pinf >: pinf | |
69 | |
70 ( 10^100x) >: ninf | |
71 99999x >: ninf | |
72 0x >: ninf | |
73 _99999x >: ninf | |
74 (- 10^100x) >: ninf | |
75 ninf >: ninf | |
76 | |
77 -. ( 10^100x) >: pinf | |
78 -. (-10^100x) >: pinf | |
79 -. ninf >: pinf | |
80 -. ninf >: 0x | |
81 | |
82 | |
83 NB. infinite integers and rationals and primitives ---------------------- | |
84 | |
85 _ 5x match _ 2x + _ 3x | |
86 _ 5x match _ 2x + 5 3x | |
87 _ 5x match _ 2x + _5 3x | |
88 __ 5x match __ 2x + __ 3x | |
89 __ 5x match __ 2x + 5 3x | |
90 __ 5x match __ 2x + _5 3x | |
91 | |
92 _ 5r2 match _ 2r2 + _ 3r2 | |
93 _ 5r2 match _ 2r2 + 5 3r2 | |
94 _ 5r2 match _ 2r2 + _5 3r2 | |
95 __ 5r2 match __ 2r2 + __ 3r2 | |
96 __ 5r2 match __ 2r2 + 5 3r2 | |
97 __ 5r2 match __ 2r2 + _5 3r2 | |
98 | |
99 'NaN error' -: _ 2x + etx __ 5x | |
100 'NaN error' -: _ 2r1 + etx __ 5r4 | |
101 'NaN error' -: __ 2x + etx _ 5x | |
102 'NaN error' -: __ 2r1 + etx _ 5r4 | |
103 | |
104 | |
105 y=: }. 5x _ __ | |
106 'NaN error' -: y +. etx 12x | |
107 'NaN error' -: y +. etx _12x | |
108 'NaN error' -: 12x +. etx y | |
109 'NaN error' -: _12x +. etx y | |
110 'NaN error' -: y +. etx y | |
111 'NaN error' -: y +. etx |.y | |
112 | |
113 y=: }. 5r1 _ __ | |
114 'NaN error' -: y +. etx 12x | |
115 'NaN error' -: y +. etx _12x | |
116 'NaN error' -: 12x +. etx y | |
117 'NaN error' -: _12x +. etx y | |
118 'NaN error' -: y +. etx y | |
119 'NaN error' -: y +. etx |.y | |
120 | |
121 _ 5x match _ 8x - __ 3x | |
122 _ 5x match _ 8x - 5 3x | |
123 _ 5x match _ 8x - _5 3x | |
124 __ 5x match __ 8x - _ 3x | |
125 __ 5x match __ 8x - 5 3x | |
126 __ 5x match __ 8x - _5 3x | |
127 | |
128 __ _5x match _ 8x -~__ 3x | |
129 __ _5x match _ 8x -~ 5 3x | |
130 __ _5x match _ 8x -~_5 3x | |
131 _ _5x match __ 8x -~ _ 3x | |
132 _ _5x match __ 8x -~ 5 3x | |
133 _ _5x match __ 8x -~_5 3x | |
134 | |
135 _ 5r2 match _ 8r2 - __ 3r2 | |
136 _ 5r2 match _ 8r2 - 5 3r2 | |
137 _ 5r2 match _ 8r2 - _5 3r2 | |
138 __ 5r2 match __ 8r2 - _ 3r2 | |
139 __ 5r2 match __ 8r2 - 5 3r2 | |
140 __ 5r2 match __ 8r2 - _5 3r2 | |
141 | |
142 __ _5r2 match _ 8r2 -~__ 3r2 | |
143 __ _5r2 match _ 8r2 -~ 5 3r2 | |
144 __ _5r2 match _ 8r2 -~_5 3r2 | |
145 _ _5r2 match __ 8r2 -~ _ 3r2 | |
146 _ _5r2 match __ 8r2 -~ 5 3r2 | |
147 _ _5r2 match __ 8r2 -~_5 3r2 | |
148 | |
149 'NaN error' -: _ 2x - etx _ 5x | |
150 'NaN error' -: _ 2r1 - etx _ 5r4 | |
151 'NaN error' -: __ 2x - etx __ 5x | |
152 'NaN error' -: __ 2r1 - etx __ 5r4 | |
153 | |
154 | |
155 _1 = * {. __ 2x | |
156 _1 = * {. __ 2r3 | |
157 1 = * {. _ 2x | |
158 1 = * {. _ 2r3 | |
159 | |
160 0 0 -: 0 * _ 2x | |
161 0 0 -: 0 * __ 2x | |
162 0 0 -: 0 * _ 2r5 | |
163 0 0 -: 0 * __ 2r5 | |
164 | |
165 | |
166 y=: }. 5x _ __ | |
167 'NaN error' -: y *. etx 12x | |
168 'NaN error' -: y *. etx _12x | |
169 'NaN error' -: 12x *. etx y | |
170 'NaN error' -: _12x *. etx y | |
171 | |
172 x=: {. _ 5x | |
173 y=: {. __ 5x | |
174 | |
175 'NaN error' -: x *. etx x | |
176 'NaN error' -: x *. etx y | |
177 'NaN error' -: y *. etx x | |
178 'NaN error' -: y *. etx y | |
179 | |
180 y=: }. 5r1 _ __ | |
181 'NaN error' -: y *. etx 1r2 | |
182 'NaN error' -: y *. etx _1r2 | |
183 'NaN error' -: 1r2 *. etx y | |
184 'NaN error' -: _1r2 *. etx y | |
185 | |
186 x=: {. _ 5r2 | |
187 y=: {. __ 5r2 | |
188 | |
189 'NaN error' -: x *. etx x | |
190 'NaN error' -: x *. etx y | |
191 'NaN error' -: y *. etx x | |
192 'NaN error' -: y *. etx y | |
193 | |
194 5r0 -: %0x | |
195 _5r0 -: -%0x | |
196 5r0 -: %0r1 | |
197 _5r0 -: -%0r1 | |
198 | |
199 x=: {. _ 5x | |
200 (64=type y), x = y=: 5x % 0x | |
201 (64=type y),(-x) = y=: _5x % 0x | |
202 (64=type y), 0x = y=: 5x % x | |
203 (64=type y), 0x = y=: _5x % x | |
204 | |
205 x=: {. _ 5x | |
206 y=: {. __ 5x | |
207 'NaN error' -: x % etx x | |
208 'NaN error' -: x % etx y | |
209 'NaN error' -: y % etx x | |
210 'NaN error' -: y % etx y | |
211 | |
212 x=: {. _ 5r2 | |
213 y=: {. __ 5r2 | |
214 'NaN error' -: x % etx x | |
215 'NaN error' -: x % etx y | |
216 'NaN error' -: y % etx x | |
217 'NaN error' -: y % etx y | |
218 | |
219 | |
220 pinf = | pinf,ninf | |
221 | |
222 y=: }. 2x _ __ | |
223 (<'NaN error') = 5 _5x | etx&.>/ y | |
224 (2 2$5 _ __ _5x) -: y |/ 5 _5x | |
225 y -: 0x | y | |
226 | |
227 y=: }. 2r3 _ __ | |
228 (<'NaN error') = 5 _5r1 |etx&.>/ y | |
229 (2 2$5 _ __ _5r1) -: y |/ 5 _5r1 | |
230 y -: 0r1 | y | |
231 | |
232 _ 2x match ! _ 2x | |
233 _ 2x match ! _ 2r1 | |
234 _ 2x match ! __ 2x | |
235 _ 2x match ! __ 2r1 | |
236 | |
237 ( 64 -: type x), '_ __ 5' -: ": x=:_ __ 5x | |
238 (128 -: type x), '_ __ 5r3' -: ": x=:_ __ 5r3 | |
239 | |
240 'domain error' -: p: etx {. _ 12x | |
241 'domain error' -: p: etx {. __ 12x | |
242 'domain error' -: p: etx {. _ 12r7 | |
243 'domain error' -: p: etx {. __ 12r7 | |
244 | |
245 'domain error' -: q: etx {. _ 12x | |
246 'domain error' -: q: etx {. __ 12x | |
247 'domain error' -: q: etx {. _ 12r7 | |
248 'domain error' -: q: etx {. __ 12r7 | |
249 | |
250 | |
251 4!:55 ;:'match ninf pinf x xi y' | |
252 | |
253 |