| ## Miscellaneous rational arithmetic tests |
| ## Generated and verified by hand |
| |
| # Basic negation tests |
| qneg:0,0:0 |
| qneg:0,=1:0 |
| qneg:1/37,15/16:-1/37 |
| qneg:65/18,=1:-65/18 |
| qneg:-6/7,=1:6/7 |
| |
| # Basic absolute value tests |
| qabs:0,0:0 |
| qabs:0,=1:0 |
| qabs:1/37,15/16:1/37 |
| qabs:-592384293849818/1000001,55:592384293849818/1000001 |
| |
| # Reciprocal tests |
| qrecip:0,0:$MP_UNDEF |
| qrecip:1/2,5:2 |
| qrecip:-3/2,100/995:-2/3 |
| qrecip:655378011918000000,=1:1/655378011918000000 |
| |
| # Reading decimal fractions |
| qrdec:0,10:0 |
| qrdec:1.10000,10:11/10 |
| qrdec:1.01000,10:101/100 |
| qrdec:1001.001,10:1001001/1000 |
| qrdec:1001.001,2:73/8 |
| qrdec:12.05,10:241/20 |
| qrdec:-5.00138,10:-250069/50000 |
| qrdec:-00000.5,10:-1/2 |
| qrdec:.5,10:1/2 |
| qrdec:-.005,10:-1/200 |
| |
| # Rational exponentiation |
| qexpt:-5/8,0,0:1 |
| qexpt:-5/8,0,=1:1 |
| qexpt:13/8,0,0:1 |
| qexpt:13/8,0,=1:1 |
| qexpt:509252236125428/47889593208724507642867,0,0:1 |
| qexpt:509252236125428/47889593208724507642867,0,=1:1 |
| qexpt:-5/8,1,0:-5/8 |
| qexpt:-5/8,1,=1:-5/8 |
| qexpt:13/8,1,0:13/8 |
| qexpt:13/8,1,=1:13/8 |
| qexpt:509252236125428/47889593208724507642867,1,0:509252236125428/47889593208724507642867 |
| qexpt:509252236125428/47889593208724507642867,1,=1:509252236125428/47889593208724507642867 |
| qexpt:509252236125428/47889593208724507642867,4,15/39:67256115255216568118287656956157205834289880165948820377856/5259743820161714626344840164714583399959974116151536869550562774750827767486998189660536721 |
| qexpt:509252236125428/47889593208724507642867,4,=1:67256115255216568118287656956157205834289880165948820377856/5259743820161714626344840164714583399959974116151536869550562774750827767486998189660536721 |