System Variable IC: Difference between revisions
From NARS2000
Jump to navigationJump to search
No edit summary |
No edit summary |
||
| Line 47: | Line 47: | ||
</table> | </table> | ||
<br /> | <br /> | ||
<p>This experimental feature attempts to collect together in one place control of various indeterminate calculations such as <apll>0÷0</apll> and friends. The values of this multi-element vector each control a different calculation. In particular,</p> | <p>This experimental feature attempts to collect together in one place control of various infinite and indeterminate calculations such as <apll>÷0</appl>, <apll>0÷0</apll>, and friends. The values of this multi-element vector each control a different calculation. In particular,</p> | ||
<table border="0" cellpadding="5" cellspacing="0 rules="rows" summary=""> | <table border="0" cellpadding="5" cellspacing="0 rules="rows" summary=""> | ||
| Line 111: | Line 111: | ||
<tr> | <tr> | ||
<td align="center">9</td> | <td align="center">9</td> | ||
<td align="center"><apll>N*∞</apll> for <apll>N<¯1</apll></td> | |||
<td align="center"><apll>DOMAIN ERROR</apll></td> | |||
</tr> | |||
<tr> | |||
<td align="center">10</td> | |||
<td align="center"><apll>0⍟0</apll></td> | <td align="center"><apll>0⍟0</apll></td> | ||
<td align="center"><apll>DOMAIN ERROR</apll></td> | <td align="center"><apll>DOMAIN ERROR</apll></td> | ||
| Line 116: | Line 122: | ||
<tr> | <tr> | ||
<td align="center"> | <td align="center">11</td> | ||
<td align="center"><apll>0⍟1</apll></td> | <td align="center"><apll>0⍟1</apll></td> | ||
<td align="center"><apll>DOMAIN ERROR</apll></td> | <td align="center"><apll>DOMAIN ERROR</apll></td> | ||
| Line 122: | Line 128: | ||
<tr> | <tr> | ||
<td align="center"> | <td align="center">12</td> | ||
<td align="center"><apll>1⍟0</apll></td> | <td align="center"><apll>1⍟0</apll></td> | ||
<td align="center"><apll>DOMAIN ERROR</apll></td> | <td align="center"><apll>DOMAIN ERROR</apll></td> | ||
| Line 128: | Line 134: | ||
<tr> | <tr> | ||
<td align="center"> | <td align="center">13</td> | ||
<td align="center"><apll>1⍟1</apll></td> | <td align="center"><apll>1⍟1</apll></td> | ||
<td align="center"><apll>1</apll></td> | <td align="center"><apll>1</apll></td> | ||
| Line 175: | Line 181: | ||
⎕IO←0<br /> | ⎕IO←0<br /> | ||
⎕IC<br /> | ⎕IC<br /> | ||
3 4 2 2 2 1 2 2 1 2 2 2 1<br /> | 3 4 2 2 2 1 2 2 1 2 2 2 2 1<br /> | ||
0÷0<br /> | 0÷0<br /> | ||
1<br /> | 1<br /> | ||
| Line 185: | Line 191: | ||
⎕IC←⍬<br /> | ⎕IC←⍬<br /> | ||
⎕IC<br /> | ⎕IC<br /> | ||
3 4 2 2 2 1 2 2 1 2 2 2 1<br /> | 3 4 2 2 2 1 2 2 1 2 2 2 2 1<br /> | ||
</apll> | </apll> | ||
==Incomplete List of Indeterminates== | |||
<p>That there may be other indeterminates not covered by this feature. Please let us know if you think there are other cases which should be included.</p> | |||
Revision as of 17:46, 8 June 2008
Indeterminate Control
|
||||
| Z is an integer vector whose elements each control a separate aspect of how indeterminates are handled by the system. |
|
This experimental feature attempts to collect together in one place control of various infinite and indeterminate calculations such as ÷0,
| ⎕IC Index (origin-0) |
Indeterminate Calculation |
Default Result |
|---|---|---|
| 0 | ÷0 | ∞ |
| 1 | ⍟0 | ¯∞ |
| 2 | !N for integer N < 0 | DOMAIN ERROR |
| 3 | 0×∞ and ∞×0 | DOMAIN ERROR |
| 4 | 0ׯ∞ and ¯∞×0 | DOMAIN ERROR |
| 5 | 0÷0 | 1 |
| 6 | ∞÷∞ (same sign) | DOMAIN ERROR |
| 7 | ∞÷∞ (different sign) | DOMAIN ERROR |
| 8 | 0*0 | 1 |
| 9 | N*∞ for N<¯1 | DOMAIN ERROR |
| 10 | 0⍟0 | DOMAIN ERROR |
| 11 | 0⍟1 | DOMAIN ERROR |
| 12 | 1⍟0 | DOMAIN ERROR |
| 13 | 1⍟1 | 1 |
The values in each element of ⎕IC control the result of the calculation as follows:
| ⎕IC Value | Result |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | DOMAIN ERROR |
| 3 | ∞ |
| 4 | ¯∞ |
For example,
⎕IO←0
⎕IC
3 4 2 2 2 1 2 2 1 2 2 2 2 1
0÷0
1
⎕IC[5]←2
0÷0
DOMAIN ERROR
0÷0
∧
⎕IC←⍬
⎕IC
3 4 2 2 2 1 2 2 1 2 2 2 2 1
Incomplete List of Indeterminates
That there may be other indeterminates not covered by this feature. Please let us know if you think there are other cases which should be included.