floatRulesCommon.key

Taclets

No choice condition specified

sinIsNaN

sinIsNaN { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( doubleIsNaN ( arg )| doubleIsInfinite ( arg )-> doubleIsNaN ( sinDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 13 Offset :4

sineIsZero

sineIsZero { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( arg = 0.0d -> sinDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 22 Offset :4

sineRange

sineRange { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( sinDouble ( arg )>= - 1.0d & sinDouble ( arg )<= 1.0d | doubleIsNaN ( sinDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 29 Offset :4

sineIsNaNAlt

sineIsNaNAlt { \schemaVar \term double arg ; \find ( doubleIsNaN ( sinDouble ( arg ))) \replacewith ( doubleIsNaN ( arg )| doubleIsInfinite ( arg )) \heuristics (simplify ) };defined in: floatRulesCommon.key Line: 36 Offset :4

sineRangeAlt

sineRangeAlt { \schemaVar \term double arg ; \find ( ==> doubleIsNaN ( sinDouble ( arg ))) \add ( sinDouble ( arg )>= - 1.0d & sinDouble ( arg )<= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 43 Offset :4

sinIsNotNaN

sinIsNotNaN { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )-> ! doubleIsNaN ( sinDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 51 Offset :4

sinRange2

sinRange2 { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )-> sinDouble ( arg )>= - 1.0d & sinDouble ( arg )<= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 59 Offset :4

sinRange3

sinRange3 { \schemaVar \term double arg ; \find ( sinDouble ( arg )) \add ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )-> mulDouble ( sinDouble ( arg ), sinDouble ( arg ))>= 0.0d & mulDouble ( sinDouble ( arg ), sinDouble ( arg ))<= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 67 Offset :4

cosIsNaN

cosIsNaN { \schemaVar \term double arg ; \find ( cosDouble ( arg )) \add ( doubleIsNaN ( arg )| doubleIsInfinite ( arg )-> doubleIsNaN ( cosDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 77 Offset :4

cosRange

cosRange { \schemaVar \term double arg ; \find ( cosDouble ( arg )) \add ( cosDouble ( arg )>= 0.0d & cosDouble ( arg )<= 1.0d | doubleIsNaN ( cosDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 84 Offset :4

cosIsNaNAlt

cosIsNaNAlt { \schemaVar \term double arg ; \find ( doubleIsNaN ( cosDouble ( arg ))) \replacewith ( doubleIsNaN ( arg )| doubleIsInfinite ( arg )) \heuristics (simplify ) };defined in: floatRulesCommon.key Line: 91 Offset :4

cosRangeAlt

cosRangeAlt { \schemaVar \term double arg ; \find ( ==> doubleIsNaN ( cosDouble ( arg ))) \add ( cosDouble ( arg )>= 0.0d & cosDouble ( arg )<= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 98 Offset :4

cosIsNotNaN

cosIsNotNaN { \schemaVar \term double arg ; \find ( cosDouble ( arg )) \add ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )-> ! doubleIsNaN ( cosDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 106 Offset :4

cosRange2

cosRange2 { \schemaVar \term double arg ; \find ( cosDouble ( arg )) \add ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )-> cosDouble ( arg )>= 0.0d & cosDouble ( arg )<= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 114 Offset :4

asinIsNaN

asinIsNaN { \schemaVar \term double arg ; \find ( asinDouble ( arg )) \add ( doubleIsNaN ( arg )| arg < - 1.0d | arg > 1.0d -> doubleIsNaN ( asinDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 123 Offset :4

asineIsZero

asineIsZero { \schemaVar \term double arg ; \find ( asinDouble ( arg )) \add ( arg = 0.0d -> asinDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 132 Offset :4

asineRange

asineRange { \schemaVar \term double arg ; \find ( asinDouble ( arg )) \add ( arg >= - 1.0d & arg <= 1.0d -> asinDouble ( arg )>= - 1.5707963267948966d & asinDouble ( arg )<= 1.5707963267948966d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 141 Offset :4

acosIsNaN

acosIsNaN { \schemaVar \term double arg ; \find ( acosDouble ( arg )) \add ( doubleIsNaN ( arg )| arg < - 1.0d | arg > 1.0d -> doubleIsNaN ( acosDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 150 Offset :4

acosRange

acosRange { \schemaVar \term double arg ; \find ( acosDouble ( arg )) \add ( arg >= - 1.0d & arg <= 1.0d -> acosDouble ( arg )>= 0.0d & acosDouble ( arg )<= 3.14159265358979323846d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 159 Offset :4

tanIsNaN

tanIsNaN { \schemaVar \term double arg ; \find ( tanDouble ( arg )) \add ( doubleIsNaN ( arg )| doubleIsInfinite ( arg )-> doubleIsNaN ( tanDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 168 Offset :4

tanIsZero

tanIsZero { \schemaVar \term double arg ; \find ( tanDouble ( arg )) \add ( arg = 0.0d -> tanDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 177 Offset :4

atan2IsNaN

atan2IsNaN { \schemaVar \term double arg1 , arg2 ; \find ( atan2Double ( arg1 , arg2 )) \add ( doubleIsNaN ( arg1 )| doubleIsNaN ( arg2 )-> doubleIsNaN ( atan2Double ( arg1 , arg2 ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 186 Offset :4

atan2Range

atan2Range { \schemaVar \term double arg1 , arg2 ; \find ( atan2Double ( arg1 , arg2 )) \add ( ! doubleIsNaN ( arg1 )& ! doubleIsNaN ( arg2 )-> atan2Double ( arg1 , arg2 )>= - 3.14159265358979323846d & atan2Double ( arg1 , arg2 )<= 3.14159265358979323846d ==> ) };defined in: floatRulesCommon.key Line: 195 Offset :4

sqrtIsNaN

sqrtIsNaN { \schemaVar \term double arg ; \find ( sqrtDouble ( arg )) \add ( doubleIsNaN ( arg )| arg < 0.0d -> doubleIsNaN ( sqrtDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 203 Offset :4

sqrtIsInfinite

sqrtIsInfinite { \schemaVar \term double arg ; \find ( sqrtDouble ( arg )) \add ( doubleIsInfinite ( arg )& arg > 0.0d -> doubleIsInfinite ( sqrtDouble ( arg ))& sqrtDouble ( arg )> 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 212 Offset :4

sqrtIsZero

sqrtIsZero { \schemaVar \term double arg ; \find ( sqrtDouble ( arg )) \add ( arg = 0.0d -> sqrtDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 221 Offset :4

sqrtIsNotNaN

sqrtIsNotNaN { \schemaVar \term double arg ; \find ( sqrtDouble ( arg )) \add ( ! doubleIsNaN ( arg )& arg >= 0.0d -> ! doubleIsNaN ( sqrtDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 230 Offset :4

sqrtIsSmaller

sqrtIsSmaller { \schemaVar \term double arg ; \find ( sqrtDouble ( arg )) \add ( ! doubleIsInfinite ( arg )& arg > 1.0d -> sqrtDouble ( arg )< arg ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 237 Offset :4

powIsOne

powIsOne { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( arg2 = 0.0d -> powDouble ( arg1 , arg2 )= 1.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 246 Offset :4

powIsNotNaN

powIsNotNaN { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ! doubleIsNaN ( arg1 )& arg2 = 1.0d -> powDouble ( arg1 , arg2 )= arg1 ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 255 Offset :4

powIsNaN1

powIsNaN1 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( doubleIsNaN ( arg2 )-> doubleIsNaN ( powDouble ( arg1 , arg2 ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 264 Offset :4

powIsNaN2

powIsNaN2 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( doubleIsNaN ( arg1 )& arg2 != 0.0d -> doubleIsNaN ( powDouble ( arg1 , arg2 ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 273 Offset :4

powIsInfinite1

powIsInfinite1 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ( ( arg1 >= 1.0d | arg1 <= - 1.0d )& doubleIsInfinite ( arg2 )& arg2 > 0.0d )| ( arg1 < 1.0d & arg1 > - 1.0d & doubleIsInfinite ( arg2 )& arg2 < 0.0d )-> doubleIsInfinite ( powDouble ( arg1 , arg2 ))& powDouble ( arg1 , arg2 )> 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 284 Offset :4

powIsZero1

powIsZero1 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ( ( arg1 >= 1.0d | arg1 <= - 1.0d )& doubleIsInfinite ( arg2 )& arg2 < 0.0d )| ( arg1 < 1.0d & arg1 > - 1.0d & doubleIsInfinite ( arg2 )& arg2 > 0.0d )-> powDouble ( arg1 , arg2 )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 297 Offset :4

powIsNaN3

powIsNaN3 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ( arg1 >= 1.0d | arg1 <= - 1.0d )& doubleIsInfinite ( arg2 )-> doubleIsNaN ( powDouble ( arg1 , arg2 ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 308 Offset :4

powIsZero2

powIsZero2 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ( eqDouble ( arg1 , 0.0d )& arg2 > 0.0d )| ( doubleIsInfinite ( arg1 )& arg1 > 0.0d & arg2 < 0.0d )-> powDouble ( arg1 , arg2 )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 319 Offset :4

powIsInfinite2

powIsInfinite2 { \schemaVar \term double arg1 , arg2 ; \find ( powDouble ( arg1 , arg2 )) \add ( ( eqDouble ( arg1 , 0.0d )& arg2 < 0.0d )| ( doubleIsInfinite ( arg1 )& arg1 > 0.0d & arg2 > 0.0d )-> doubleIsInfinite ( powDouble ( arg1 , arg2 ))& powDouble ( arg1 , arg2 )> 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 331 Offset :4

expIsNaN

expIsNaN { \schemaVar \term double arg ; \find ( expDouble ( arg )) \add ( doubleIsNaN ( arg )-> doubleIsNaN ( expDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 341 Offset :4

expIsInfinite

expIsInfinite { \schemaVar \term double arg ; \find ( expDouble ( arg )) \add ( doubleIsInfinite ( arg )& arg > 0.0d -> doubleIsInfinite ( expDouble ( arg ))& expDouble ( arg )> 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 350 Offset :4

expIsZero

expIsZero { \schemaVar \term double arg ; \find ( expDouble ( arg )) \add ( doubleIsInfinite ( arg )& arg < 0.0d -> expDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 359 Offset :4

atanIsNaN

atanIsNaN { \schemaVar \term double arg ; \find ( atanDouble ( arg )) \add ( doubleIsNaN ( arg )-> doubleIsNaN ( atanDouble ( arg ))==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 368 Offset :4

atanIsZero

atanIsZero { \schemaVar \term double arg ; \find ( atanDouble ( arg )) \add ( arg = 0.0d -> atanDouble ( arg )= 0.0d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 377 Offset :4

atanRange

atanRange { \schemaVar \term double arg ; \find ( atanDouble ( arg )) \add ( ! doubleIsNaN ( arg )-> atanDouble ( arg )>= - 1.5707963267948966d & atanDouble ( arg )<= 1.5707963267948966d ==> ) \heuristics (userTaclets1 ) };defined in: floatRulesCommon.key Line: 386 Offset :4

niceFloat

niceFloat { \schemaVar \term float arg ; \find ( floatIsNice ( arg )) \replacewith ( ! floatIsNaN ( arg )& ! floatIsInfinite ( arg )) \heuristics (simplify ) };defined in: floatRulesCommon.key Line: 394 Offset :4

niceDouble

niceDouble { \schemaVar \term double arg ; \find ( doubleIsNice ( arg )) \replacewith ( ! doubleIsNaN ( arg )& ! doubleIsInfinite ( arg )) \heuristics (simplify ) };defined in: floatRulesCommon.key Line: 401 Offset :4