Advertisement
logicmoo

Untitled

Dec 6th, 2018
700
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Prolog 31.73 KB | None | 0 0
  1. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs# cat ../../Float.curry
  2. ------------------------------------------------------------------------------
  3. --- A collection of operations on floating point numbers.
  4. ---
  5. --- @category general
  6. ------------------------------------------------------------------------------
  7.  
  8. module Float(pi,(+.),(-.),(*.),(/.),(^.),i2f,truncate,round,recip,sqrt,log
  9.              ,logBase, exp,sin,cos,tan,asin,acos,atan,sinh,cosh,tanh
  10.             ,asinh,acosh,atanh) where
  11.  
  12. -- The operator declarations are similar to the standard arithmetic operators.
  13.  
  14. infixr 8 ^.
  15. infixl 7 *., /.
  16. infixl 6 +., -.
  17.  
  18.  
  19. --- The number pi.
  20. pi :: Float
  21. pi = 3.141592653589793238
  22.  
  23. --- Addition on floats.
  24. (+.)   :: Float -> Float -> Float
  25. x +. y = (prim_Float_plus $# y) $# x
  26.  
  27. prim_Float_plus :: Float -> Float -> Float
  28. prim_Float_plus external
  29.  
  30. --- Subtraction on floats.
  31. (-.)   :: Float -> Float -> Float
  32. x -. y = (prim_Float_minus $# y) $# x
  33.  
  34. prim_Float_minus :: Float -> Float -> Float
  35. prim_Float_minus external
  36.  
  37. --- Multiplication on floats.
  38. (*.)   :: Float -> Float -> Float
  39. x *. y = (prim_Float_times $# y) $# x
  40.  
  41. prim_Float_times :: Float -> Float -> Float
  42. prim_Float_times external
  43.  
  44. --- Division on floats.
  45. (/.)   :: Float -> Float -> Float
  46. x /. y = (prim_Float_div $# y) $# x
  47.  
  48. prim_Float_div :: Float -> Float -> Float
  49. prim_Float_div external
  50.  
  51. --- The value of `a ^. b` is `a` raised to the power of `b`.
  52. --- Executes in `O(log b)` steps.
  53. ---
  54. --- @param a - The base.
  55. --- @param b - The exponent.
  56. --- @return `a` raised to the power of `b`.
  57.  
  58. (^.) :: Float -> Int -> Float
  59. a ^. b | b < 0     = 1 /. a ^. (b * (-1))
  60.        | otherwise = powaux 1.0 a b
  61.   where
  62.     powaux n x y = if y == 0 then n
  63.                    else powaux (n *. if (y `mod` 2 == 1) then x else 1.0)
  64.                                (x *. x)
  65.                                (y `div` 2)
  66.  
  67. --- Conversion function from integers to floats.
  68. i2f    :: Int -> Float
  69. i2f x = prim_i2f $# x
  70.  
  71. prim_i2f :: Int -> Float
  72. prim_i2f external
  73.  
  74. --- Conversion function from floats to integers.
  75. --- The result is the closest integer between the argument and 0.
  76. truncate :: Float -> Int
  77. truncate x = prim_truncate $# x
  78.  
  79. prim_truncate :: Float -> Int
  80. prim_truncate external
  81.  
  82. --- Conversion function from floats to integers.
  83. --- The result is the nearest integer to the argument.
  84. --- If the argument is equidistant between two integers,
  85. --- it is rounded to the closest even integer value.
  86.  
  87. round :: Float -> Int
  88. round x = prim_round $# x
  89.  
  90. prim_round :: Float -> Int
  91. prim_round external
  92.  
  93. --- Reciprocal
  94.  
  95. recip :: Float -> Float
  96. recip x = 1.0 /. x
  97.  
  98. --- Square root.
  99.  
  100. sqrt :: Float -> Float
  101. sqrt x = prim_sqrt $# x
  102.  
  103. prim_sqrt :: Float -> Float
  104. prim_sqrt external
  105.  
  106. --- Natural logarithm.
  107.  
  108. log :: Float -> Float
  109. log x = prim_log $# x
  110.  
  111. prim_log :: Float -> Float
  112. prim_log external
  113.  
  114. --- Logarithm to arbitrary Base.
  115.  
  116. logBase :: Float -> Float -> Float
  117. logBase x y = log y /. log x
  118.  
  119. --- Natural exponent.
  120. exp :: Float -> Float
  121. exp x = prim_exp $# x
  122.  
  123. prim_exp :: Float -> Float
  124. prim_exp external
  125.  
  126. --- Sine.
  127. sin :: Float -> Float
  128. sin x = prim_sin $# x
  129.  
  130. prim_sin :: Float -> Float
  131. prim_sin external
  132.  
  133. --- Cosine.
  134. cos :: Float -> Float
  135. cos x = prim_cos $# x
  136.  
  137. prim_cos :: Float -> Float
  138. prim_cos external
  139.  
  140. --- Tangent.
  141. tan :: Float -> Float
  142. tan x = prim_tan $# x
  143.  
  144. prim_tan :: Float -> Float
  145. prim_tan external
  146.  
  147. --- Arc sine.
  148. asin :: Float -> Float
  149. asin x = prim_asin $# x
  150.  
  151. prim_asin :: Float -> Float
  152. prim_asin external
  153.  
  154. -- Arc cosine.
  155. acos :: Float -> Float
  156. acos x = prim_acos $# x
  157.  
  158. prim_acos :: Float -> Float
  159. prim_acos external
  160.  
  161. --- Arc tangent.
  162. atan :: Float -> Float
  163. atan x = prim_atan $# x
  164.  
  165. prim_atan :: Float -> Float
  166. prim_atan external
  167.  
  168. --- Hyperbolic sine.
  169. sinh :: Float -> Float
  170. sinh x = prim_sinh $# x
  171.  
  172. prim_sinh :: Float -> Float
  173. prim_sinh external
  174.  
  175. -- Hyperbolic cosine.
  176. cosh :: Float -> Float
  177. cosh x = prim_cosh $# x
  178.  
  179. prim_cosh :: Float -> Float
  180. prim_cosh external
  181.  
  182. --- Hyperbolic tangent.
  183. tanh :: Float -> Float
  184. tanh x = prim_tanh $# x
  185.  
  186. prim_tanh :: Float -> Float
  187. prim_tanh external
  188.  
  189. --- Hyperbolic Arc sine.
  190. asinh :: Float -> Float
  191. asinh x = prim_asinh $# x
  192.  
  193. prim_asinh :: Float -> Float
  194. prim_asinh external
  195.  
  196. -- Hyperbolic Arc cosine.
  197. acosh :: Float -> Float
  198. acosh x = prim_acosh $# x
  199.  
  200. prim_acosh :: Float -> Float
  201. prim_acosh external
  202.  
  203. --- Hyperbolic Arc tangent.
  204. atanh :: Float -> Float
  205. atanh x = prim_atanh $# x
  206.  
  207. prim_atanh :: Float -> Float
  208. prim_atanh external
  209. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs#
  210. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs#
  211. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs#
  212. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs#
  213. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs#
  214. root@gitlab:/usr/lib/pakcs/lib/.curry/pakcs# cat Float.pl
  215. %PAKCS2.0 swi7 VARIABLESHARING
  216.  
  217. :-noSingletonWarnings.
  218. :-noRedefineWarnings.
  219. :-noDiscontiguousWarnings.
  220.  
  221. :-importModule('Prelude').
  222.  
  223. :-curryModule('Float').
  224.  
  225. :-ensure_lib_loaded(prim_float).
  226.  
  227. %%%%%%%%%%%% function types %%%%%%%%%%%%%%%%%%%
  228. :-multifile functiontype/6.
  229. :-dynamic functiontype/6.
  230. functiontype('Float.pi',pi,0,'Float.pi',nofix,'TCons'('Prelude.Float',[])).
  231. functiontype('Float.+.',+.,2,'Float.+.',infixl(6),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  232. functiontype('Float.prim_Float_plus','Float.prim_Float_plus',2,'Float.prim_Float_plus',nofix,'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  233. functiontype('Float.-.',-.,2,'Float.-.',infixl(6),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  234. functiontype('Float.prim_Float_minus','Float.prim_Float_minus',2,'Float.prim_Float_minus',nofix,'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  235. functiontype('Float.*.',*.,2,'Float.*.',infixl(7),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  236. functiontype('Float.prim_Float_times','Float.prim_Float_times',2,'Float.prim_Float_times',nofix,'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  237. functiontype('Float./.',/.,2,'Float./.',infixl(7),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  238. functiontype('Float.prim_Float_div','Float.prim_Float_div',2,'Float.prim_Float_div',nofix,'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  239. functiontype('Float.^.',^.,2,'Float.^.',infixr(8),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Int',[]),'TCons'('Prelude.Float',[])))).
  240. functiontype('Float.\'5E..powaux.12','Float.^..powaux.12',4,'Float.\'5E..powaux.12',nofix,'FuncType'('TCons'('Prelude._Dict\'23Integral',[_2139752]),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'FuncType'(_2139752,'TCons'('Prelude.Float',[])))))).
  241. functiontype('Float.i2f',i2f,1,'Float.i2f',nofix,'FuncType'('TCons'('Prelude.Int',[]),'TCons'('Prelude.Float',[]))).
  242. functiontype('Float.prim_i2f','Float.prim_i2f',1,'Float.prim_i2f',nofix,'FuncType'('TCons'('Prelude.Int',[]),'TCons'('Prelude.Float',[]))).
  243. functiontype('Float.truncate',truncate,1,'Float.truncate',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Int',[]))).
  244. functiontype('Float.prim_truncate','Float.prim_truncate',1,'Float.prim_truncate',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Int',[]))).
  245. functiontype('Float.round',round,1,'Float.round',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Int',[]))).
  246. functiontype('Float.prim_round','Float.prim_round',1,'Float.prim_round',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Int',[]))).
  247. functiontype('Float.recip',recip,1,'Float.recip',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  248. functiontype('Float.sqrt',sqrt,1,'Float.sqrt',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  249. functiontype('Float.prim_sqrt','Float.prim_sqrt',1,'Float.prim_sqrt',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  250. functiontype('Float.log',log,1,'Float.log',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  251. functiontype('Float.prim_log','Float.prim_log',1,'Float.prim_log',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  252. functiontype('Float.logBase',logBase,2,'Float.logBase',nofix,'FuncType'('TCons'('Prelude.Float',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  253. functiontype('Float.exp',exp,1,'Float.exp',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  254. functiontype('Float.prim_exp','Float.prim_exp',1,'Float.prim_exp',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  255. functiontype('Float.sin',sin,1,'Float.sin',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  256. functiontype('Float.prim_sin','Float.prim_sin',1,'Float.prim_sin',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  257. functiontype('Float.cos',cos,1,'Float.cos',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  258. functiontype('Float.prim_cos','Float.prim_cos',1,'Float.prim_cos',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  259. functiontype('Float.tan',tan,1,'Float.tan',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  260. functiontype('Float.prim_tan','Float.prim_tan',1,'Float.prim_tan',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  261. functiontype('Float.asin',asin,1,'Float.asin',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  262. functiontype('Float.prim_asin','Float.prim_asin',1,'Float.prim_asin',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  263. functiontype('Float.acos',acos,1,'Float.acos',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  264. functiontype('Float.prim_acos','Float.prim_acos',1,'Float.prim_acos',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  265. functiontype('Float.atan',atan,1,'Float.atan',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  266. functiontype('Float.prim_atan','Float.prim_atan',1,'Float.prim_atan',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  267. functiontype('Float.sinh',sinh,1,'Float.sinh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  268. functiontype('Float.prim_sinh','Float.prim_sinh',1,'Float.prim_sinh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  269. functiontype('Float.cosh',cosh,1,'Float.cosh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  270. functiontype('Float.prim_cosh','Float.prim_cosh',1,'Float.prim_cosh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  271. functiontype('Float.tanh',tanh,1,'Float.tanh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  272. functiontype('Float.prim_tanh','Float.prim_tanh',1,'Float.prim_tanh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  273. functiontype('Float.asinh',asinh,1,'Float.asinh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  274. functiontype('Float.prim_asinh','Float.prim_asinh',1,'Float.prim_asinh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  275. functiontype('Float.acosh',acosh,1,'Float.acosh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  276. functiontype('Float.prim_acosh','Float.prim_acosh',1,'Float.prim_acosh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  277. functiontype('Float.atanh',atanh,1,'Float.atanh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  278. functiontype('Float.prim_atanh','Float.prim_atanh',1,'Float.prim_atanh',nofix,'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[]))).
  279. functiontype('Float.\'5E..powaux.12._\'23caseor0','Float.^..powaux.12._#caseor0',2,'Float.\'5E..powaux.12._\'23caseor0',nofix,'FuncType'('TCons'('Prelude.Bool',[]),'FuncType'('TCons'('Prelude.Float',[]),'TCons'('Prelude.Float',[])))).
  280.  
  281. %%%%%%%%%%%% constructor types %%%%%%%%%%%%%%%%%%%
  282. :-multifile constructortype/7.
  283. :-dynamic constructortype/7.
  284.  
  285. %%%%%%%%%%%% function definitions %%%%%%%%%%%%%%%%%%%
  286. 'Float.pi'(_2188416,_2188418,_2188420):-freeze(_2188418,'blocked_Float.pi'(_2188416,_2188418,_2188420)).
  287. 'blocked_Float.pi'(3.1415926535897927,_2188484,_2188484).
  288.  
  289. 'Float.+.'(_2189094,_2189096,_2189098,_2189100,_2189102):-freeze(_2189100,'blocked_Float.+.'(_2189094,_2189096,_2189098,_2189100,_2189102)).
  290. 'blocked_Float.+.'(_2189180,_2189198,_2189518,_2189524,_2189530):-hnf('Prelude.$#'('Prelude.$#'(partcall(2,'Float.prim_Float_plus',[]),_2189198),_2189180),_2189518,_2189524,_2189530).
  291.  
  292. 'Float.prim_Float_plus'(_2190976,_2190978,_2190980,_2190982,_2190984):-freeze(_2190982,'blocked_Float.prim_Float_plus'(_2190976,_2190978,_2190980,_2190982,_2190984)).
  293. 'blocked_Float.prim_Float_plus'(_2191054,_2191060,_2191066,_2191072,_2191078):-derefRoot(_2191054,_2191114),derefRoot(_2191060,_2191120),prim_Float_plus(_2191114,_2191120,_2191066),_2191072=_2191078.
  294.  
  295. 'Float.-.'(_2193650,_2193652,_2193654,_2193656,_2193658):-freeze(_2193656,'blocked_Float.-.'(_2193650,_2193652,_2193654,_2193656,_2193658)).
  296. 'blocked_Float.-.'(_2193736,_2193754,_2194074,_2194080,_2194086):-hnf('Prelude.$#'('Prelude.$#'(partcall(2,'Float.prim_Float_minus',[]),_2193754),_2193736),_2194074,_2194080,_2194086).
  297.  
  298. 'Float.prim_Float_minus'(_2195550,_2195552,_2195554,_2195556,_2195558):-freeze(_2195556,'blocked_Float.prim_Float_minus'(_2195550,_2195552,_2195554,_2195556,_2195558)).
  299. 'blocked_Float.prim_Float_minus'(_2195628,_2195634,_2195640,_2195646,_2195652):-derefRoot(_2195628,_2195688),derefRoot(_2195634,_2195694),prim_Float_minus(_2195688,_2195694,_2195640),_2195646=_2195652.
  300.  
  301. 'Float.*.'(_2198224,_2198226,_2198228,_2198230,_2198232):-freeze(_2198230,'blocked_Float.*.'(_2198224,_2198226,_2198228,_2198230,_2198232)).
  302. 'blocked_Float.*.'(_2198310,_2198328,_2198648,_2198654,_2198660):-hnf('Prelude.$#'('Prelude.$#'(partcall(2,'Float.prim_Float_times',[]),_2198328),_2198310),_2198648,_2198654,_2198660).
  303.  
  304. 'Float.prim_Float_times'(_2200124,_2200126,_2200128,_2200130,_2200132):-freeze(_2200130,'blocked_Float.prim_Float_times'(_2200124,_2200126,_2200128,_2200130,_2200132)).
  305. 'blocked_Float.prim_Float_times'(_2200202,_2200208,_2200214,_2200220,_2200226):-derefRoot(_2200202,_2200262),derefRoot(_2200208,_2200268),prim_Float_times(_2200262,_2200268,_2200214),_2200220=_2200226.
  306.  
  307. 'Float./.'(_2202798,_2202800,_2202802,_2202804,_2202806):-freeze(_2202804,'blocked_Float./.'(_2202798,_2202800,_2202802,_2202804,_2202806)).
  308. 'blocked_Float./.'(_2202884,_2202902,_2203222,_2203228,_2203234):-hnf('Prelude.$#'('Prelude.$#'(partcall(2,'Float.prim_Float_div',[]),_2202902),_2202884),_2203222,_2203228,_2203234).
  309.  
  310. 'Float.prim_Float_div'(_2204662,_2204664,_2204666,_2204668,_2204670):-freeze(_2204668,'blocked_Float.prim_Float_div'(_2204662,_2204664,_2204666,_2204668,_2204670)).
  311. 'blocked_Float.prim_Float_div'(_2204740,_2204746,_2204752,_2204758,_2204764):-derefRoot(_2204740,_2204800),derefRoot(_2204746,_2204806),prim_Float_div(_2204800,_2204806,_2204752),_2204758=_2204764.
  312.  
  313. 'Float.^.'(_2207336,_2207338,_2207340,_2207342,_2207344):-freeze(_2207342,'blocked_Float.^.'(_2207336,_2207338,_2207340,_2207342,_2207344)).
  314. 'blocked_Float.^.'(_2207422,_2207440,_2211140,_2211146,_2211152):-makeShare(_2207440,_2209372),hnf('Prelude.apply'('Prelude.apply'('Prelude._impl\'23\'3C\'23Prelude.Ord\'23Prelude.Int',_2209372),0),_2211884,_2211146,_2211854),'blocked_Float.^._ComplexCase'(_2211884,_2207422,_2209372,_2211140,_2211854,_2211152).
  315.  
  316. 'blocked_Float.^._ComplexCase'(_2212214,_2212216,_2212218,_2212220,_2212222,_2212224):-freeze(_2212222,freeze(_2212214,'blocked_blocked_Float.^._ComplexCase'(_2212214,_2212216,_2212218,_2212220,_2212222,_2212224))).
  317. 'blocked_blocked_Float.^._ComplexCase'('Prelude.True',_2207422,_2209372,_2212566,_2212572,_2212578):-hnf('Float./.'(1.0,'Float.^.'(_2207422,'Prelude._impl\'23\'2A\'23Prelude.Num\'23Prelude.Int'(_2209372,'Prelude._impl\'23negate\'23Prelude.Num\'23Prelude.Int'(1)))),_2212566,_2212572,_2212578).
  318. 'blocked_blocked_Float.^._ComplexCase'('Prelude.False',_2207422,_2209372,_2215520,_2215526,_2215532):-!,hnf('Prelude.otherwise',_2217412,_2215526,_2217382),'blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'(_2217412,_2207422,_2209372,_2215520,_2217382,_2215532).
  319.  
  320. 'blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'(_2217952,_2217954,_2217956,_2217958,_2217960,_2217962):-freeze(_2217960,freeze(_2217952,'blocked_blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'(_2217952,_2217954,_2217956,_2217958,_2217960,_2217962))).
  321. 'blocked_blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'('Prelude.True',_2207422,_2209372,_2218304,_2218310,_2218316):-hnf('Float.\'5E..powaux.12'('Prelude._inst\'23Prelude.Integral\'23Prelude.Int',1.0,_2207422,_2209372),_2218304,_2218310,_2218316).
  322. 'blocked_blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'('Prelude.False',_2207422,_2209372,_2219996,_2220002,_2220008):-!,hnf('Prelude.failure'('Float.^.',['Prelude.False']),_2219996,_2220002,_2220008).
  323. 'blocked_blocked_blocked_Float.^._ComplexCase_Prelude.False_ComplexCase'('FAIL'(_2221338),_2207422,_2209372,'FAIL'(_2221338),_2221352,_2221352).
  324. 'blocked_blocked_Float.^._ComplexCase'('FAIL'(_2221414),_2207422,_2209372,'FAIL'(_2221414),_2221428,_2221428).
  325.  
  326. 'Float.\'5E..powaux.12'(_2222276,_2222278,_2222280,_2222282,_2222284,_2222286,_2222288):-freeze(_2222286,'blocked_Float.\'5E..powaux.12'(_2222276,_2222278,_2222280,_2222282,_2222284,_2222286,_2222288)).
  327. 'blocked_Float.\'5E..powaux.12'(_2222382,_2222400,_2222418,_2222436,_2231828,_2231834,_2231840):-makeShare(_2222382,_2227276),makeShare(_2222436,_2227296),hnf('Prelude.apply'('Prelude.apply'('Prelude.=='('Prelude._super\'23Prelude.Ord\'23Prelude.Eq'('Prelude._super\'23Prelude.Real\'23Prelude.Ord'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2227276)))),_2227296),'Prelude.apply'('Prelude.fromInt'('Prelude._super\'23Prelude.Real\'23Prelude.Num'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2227276))),0)),_2233032,_2231834,_2232990),'blocked_Float.\'5E..powaux.12_ComplexCase'(_2233032,_2227276,_2222400,_2222418,_2227296,_2231828,_2232990,_2231840).
  328.  
  329. 'blocked_Float.\'5E..powaux.12_ComplexCase'(_2233450,_2233452,_2233454,_2233456,_2233458,_2233460,_2233462,_2233464):-freeze(_2233462,freeze(_2233450,'blocked_blocked_Float.\'5E..powaux.12_ComplexCase'(_2233450,_2233452,_2233454,_2233456,_2233458,_2233460,_2233462,_2233464))).
  330. 'blocked_blocked_Float.\'5E..powaux.12_ComplexCase'('Prelude.True',_2227276,_2222400,_2222418,_2227296,_2233822,_2233828,_2233834):-hnf(_2222400,_2233822,_2233828,_2233834).
  331. 'blocked_blocked_Float.\'5E..powaux.12_ComplexCase'('Prelude.False',_2227276,_2222400,_2222418,_2227296,_2234752,_2234758,_2234764):-!,makeShare(_2227276,_2235156),makeShare(_2227296,_2235176),makeShare(_2222418,_2235196),hnf('Float.\'5E..powaux.12'(_2235156,'Float.*.'(_2222400,'Float.\'5E..powaux.12._\'23caseor0'('Prelude.apply'('Prelude.apply'('Prelude.=='('Prelude._super\'23Prelude.Ord\'23Prelude.Eq'('Prelude._super\'23Prelude.Real\'23Prelude.Ord'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2235156)))),'Prelude.apply'('Prelude.apply'('Prelude.mod'(_2235156),_2235176),'Prelude.apply'('Prelude.fromInt'('Prelude._super\'23Prelude.Real\'23Prelude.Num'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2235156))),2))),'Prelude.apply'('Prelude.fromInt'('Prelude._super\'23Prelude.Real\'23Prelude.Num'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2235156))),1)),_2235196)),'Float.*.'(_2235196,_2235196),'Prelude.apply'('Prelude.apply'('Prelude.div'(_2235156),_2235176),'Prelude.apply'('Prelude.fromInt'('Prelude._super\'23Prelude.Real\'23Prelude.Num'('Prelude._super\'23Prelude.Integral\'23Prelude.Real'(_2235156))),2))),_2234752,_2234758,_2234764).
  332. 'blocked_blocked_Float.\'5E..powaux.12_ComplexCase'('FAIL'(_2244478),_2227276,_2222400,_2222418,_2227296,'FAIL'(_2244478),_2244492,_2244492).
  333.  
  334. 'Float.i2f'(_2245002,_2245004,_2245006,_2245008):-freeze(_2245006,'blocked_Float.i2f'(_2245002,_2245004,_2245006,_2245008)).
  335. 'blocked_Float.i2f'(_2245078,_2245252,_2245258,_2245264):-hnf('Prelude.$#'(partcall(1,'Float.prim_i2f',[]),_2245078),_2245252,_2245258,_2245264).
  336.  
  337. 'Float.prim_i2f'(_2246204,_2246206,_2246208,_2246210):-freeze(_2246208,'blocked_Float.prim_i2f'(_2246204,_2246206,_2246208,_2246210)).
  338. 'blocked_Float.prim_i2f'(_2246272,_2246278,_2246284,_2246290):-derefRoot(_2246272,_2246318),prim_i2f(_2246318,_2246278),_2246284=_2246290.
  339.  
  340. 'Float.truncate'(_2248022,_2248024,_2248026,_2248028):-freeze(_2248026,'blocked_Float.truncate'(_2248022,_2248024,_2248026,_2248028)).
  341. 'blocked_Float.truncate'(_2248098,_2248272,_2248278,_2248284):-hnf('Prelude.$#'(partcall(1,'Float.prim_truncate',[]),_2248098),_2248272,_2248278,_2248284).
  342.  
  343. 'Float.prim_truncate'(_2249344,_2249346,_2249348,_2249350):-freeze(_2249348,'blocked_Float.prim_truncate'(_2249344,_2249346,_2249348,_2249350)).
  344. 'blocked_Float.prim_truncate'(_2249412,_2249418,_2249424,_2249430):-derefRoot(_2249412,_2249458),prim_truncate(_2249458,_2249418),_2249424=_2249430.
  345.  
  346. 'Float.round'(_2251054,_2251056,_2251058,_2251060):-freeze(_2251058,'blocked_Float.round'(_2251054,_2251056,_2251058,_2251060)).
  347. 'blocked_Float.round'(_2251130,_2251304,_2251310,_2251316):-hnf('Prelude.$#'(partcall(1,'Float.prim_round',[]),_2251130),_2251304,_2251310,_2251316).
  348.  
  349. 'Float.prim_round'(_2252304,_2252306,_2252308,_2252310):-freeze(_2252308,'blocked_Float.prim_round'(_2252304,_2252306,_2252308,_2252310)).
  350. 'blocked_Float.prim_round'(_2252372,_2252378,_2252384,_2252390):-derefRoot(_2252372,_2252418),prim_round(_2252418,_2252378),_2252384=_2252390.
  351.  
  352. 'Float.recip'(_2254014,_2254016,_2254018,_2254020):-freeze(_2254018,'blocked_Float.recip'(_2254014,_2254016,_2254018,_2254020)).
  353. 'blocked_Float.recip'(_2254090,_2254250,_2254256,_2254262):-hnf('Float./.'(1.0,_2254090),_2254250,_2254256,_2254262).
  354.  
  355. 'Float.sqrt'(_2255272,_2255274,_2255276,_2255278):-freeze(_2255276,'blocked_Float.sqrt'(_2255272,_2255274,_2255276,_2255278)).
  356. 'blocked_Float.sqrt'(_2255348,_2255522,_2255528,_2255534):-hnf('Prelude.$#'(partcall(1,'Float.prim_sqrt',[]),_2255348),_2255522,_2255528,_2255534).
  357.  
  358. 'Float.prim_sqrt'(_2256498,_2256500,_2256502,_2256504):-freeze(_2256502,'blocked_Float.prim_sqrt'(_2256498,_2256500,_2256502,_2256504)).
  359. 'blocked_Float.prim_sqrt'(_2256566,_2256572,_2256578,_2256584):-derefRoot(_2256566,_2256612),prim_sqrt(_2256612,_2256572),_2256578=_2256584.
  360.  
  361. 'Float.log'(_2258136,_2258138,_2258140,_2258142):-freeze(_2258140,'blocked_Float.log'(_2258136,_2258138,_2258140,_2258142)).
  362. 'blocked_Float.log'(_2258212,_2258386,_2258392,_2258398):-hnf('Prelude.$#'(partcall(1,'Float.prim_log',[]),_2258212),_2258386,_2258392,_2258398).
  363.  
  364. 'Float.prim_log'(_2259338,_2259340,_2259342,_2259344):-freeze(_2259342,'blocked_Float.prim_log'(_2259338,_2259340,_2259342,_2259344)).
  365. 'blocked_Float.prim_log'(_2259406,_2259412,_2259418,_2259424):-derefRoot(_2259406,_2259452),prim_log(_2259452,_2259412),_2259418=_2259424.
  366.  
  367. 'Float.logBase'(_2261120,_2261122,_2261124,_2261126,_2261128):-freeze(_2261126,'blocked_Float.logBase'(_2261120,_2261122,_2261124,_2261126,_2261128)).
  368. 'blocked_Float.logBase'(_2261206,_2261224,_2261544,_2261550,_2261556):-hnf('Float./.'('Float.log'(_2261224),'Float.log'(_2261206)),_2261544,_2261550,_2261556).
  369.  
  370. 'Float.exp'(_2262936,_2262938,_2262940,_2262942):-freeze(_2262940,'blocked_Float.exp'(_2262936,_2262938,_2262940,_2262942)).
  371. 'blocked_Float.exp'(_2263012,_2263186,_2263192,_2263198):-hnf('Prelude.$#'(partcall(1,'Float.prim_exp',[]),_2263012),_2263186,_2263192,_2263198).
  372.  
  373. 'Float.prim_exp'(_2264138,_2264140,_2264142,_2264144):-freeze(_2264142,'blocked_Float.prim_exp'(_2264138,_2264140,_2264142,_2264144)).
  374. 'blocked_Float.prim_exp'(_2264206,_2264212,_2264218,_2264224):-derefRoot(_2264206,_2264252),prim_exp(_2264252,_2264212),_2264218=_2264224.
  375.  
  376. 'Float.sin'(_2265776,_2265778,_2265780,_2265782):-freeze(_2265780,'blocked_Float.sin'(_2265776,_2265778,_2265780,_2265782)).
  377. 'blocked_Float.sin'(_2265852,_2266026,_2266032,_2266038):-hnf('Prelude.$#'(partcall(1,'Float.prim_sin',[]),_2265852),_2266026,_2266032,_2266038).
  378.  
  379. 'Float.prim_sin'(_2266978,_2266980,_2266982,_2266984):-freeze(_2266982,'blocked_Float.prim_sin'(_2266978,_2266980,_2266982,_2266984)).
  380. 'blocked_Float.prim_sin'(_2267046,_2267052,_2267058,_2267064):-derefRoot(_2267046,_2267092),prim_sin(_2267092,_2267052),_2267058=_2267064.
  381.  
  382. 'Float.cos'(_2268616,_2268618,_2268620,_2268622):-freeze(_2268620,'blocked_Float.cos'(_2268616,_2268618,_2268620,_2268622)).
  383. 'blocked_Float.cos'(_2268692,_2268866,_2268872,_2268878):-hnf('Prelude.$#'(partcall(1,'Float.prim_cos',[]),_2268692),_2268866,_2268872,_2268878).
  384.  
  385. 'Float.prim_cos'(_2269818,_2269820,_2269822,_2269824):-freeze(_2269822,'blocked_Float.prim_cos'(_2269818,_2269820,_2269822,_2269824)).
  386. 'blocked_Float.prim_cos'(_2269886,_2269892,_2269898,_2269904):-derefRoot(_2269886,_2269932),prim_cos(_2269932,_2269892),_2269898=_2269904.
  387.  
  388. 'Float.tan'(_2271456,_2271458,_2271460,_2271462):-freeze(_2271460,'blocked_Float.tan'(_2271456,_2271458,_2271460,_2271462)).
  389. 'blocked_Float.tan'(_2271532,_2271706,_2271712,_2271718):-hnf('Prelude.$#'(partcall(1,'Float.prim_tan',[]),_2271532),_2271706,_2271712,_2271718).
  390.  
  391. 'Float.prim_tan'(_2272658,_2272660,_2272662,_2272664):-freeze(_2272662,'blocked_Float.prim_tan'(_2272658,_2272660,_2272662,_2272664)).
  392. 'blocked_Float.prim_tan'(_2272726,_2272732,_2272738,_2272744):-derefRoot(_2272726,_2272772),prim_tan(_2272772,_2272732),_2272738=_2272744.
  393.  
  394. 'Float.asin'(_2274332,_2274334,_2274336,_2274338):-freeze(_2274336,'blocked_Float.asin'(_2274332,_2274334,_2274336,_2274338)).
  395. 'blocked_Float.asin'(_2274408,_2274582,_2274588,_2274594):-hnf('Prelude.$#'(partcall(1,'Float.prim_asin',[]),_2274408),_2274582,_2274588,_2274594).
  396.  
  397. 'Float.prim_asin'(_2275558,_2275560,_2275562,_2275564):-freeze(_2275562,'blocked_Float.prim_asin'(_2275558,_2275560,_2275562,_2275564)).
  398. 'blocked_Float.prim_asin'(_2275626,_2275632,_2275638,_2275644):-derefRoot(_2275626,_2275672),prim_asin(_2275672,_2275632),_2275638=_2275644.
  399.  
  400. 'Float.acos'(_2277232,_2277234,_2277236,_2277238):-freeze(_2277236,'blocked_Float.acos'(_2277232,_2277234,_2277236,_2277238)).
  401. 'blocked_Float.acos'(_2277308,_2277482,_2277488,_2277494):-hnf('Prelude.$#'(partcall(1,'Float.prim_acos',[]),_2277308),_2277482,_2277488,_2277494).
  402.  
  403. 'Float.prim_acos'(_2278458,_2278460,_2278462,_2278464):-freeze(_2278462,'blocked_Float.prim_acos'(_2278458,_2278460,_2278462,_2278464)).
  404. 'blocked_Float.prim_acos'(_2278526,_2278532,_2278538,_2278544):-derefRoot(_2278526,_2278572),prim_acos(_2278572,_2278532),_2278538=_2278544.
  405.  
  406. 'Float.atan'(_2280132,_2280134,_2280136,_2280138):-freeze(_2280136,'blocked_Float.atan'(_2280132,_2280134,_2280136,_2280138)).
  407. 'blocked_Float.atan'(_2280208,_2280382,_2280388,_2280394):-hnf('Prelude.$#'(partcall(1,'Float.prim_atan',[]),_2280208),_2280382,_2280388,_2280394).
  408.  
  409. 'Float.prim_atan'(_2281358,_2281360,_2281362,_2281364):-freeze(_2281362,'blocked_Float.prim_atan'(_2281358,_2281360,_2281362,_2281364)).
  410. 'blocked_Float.prim_atan'(_2281426,_2281432,_2281438,_2281444):-derefRoot(_2281426,_2281472),prim_atan(_2281472,_2281432),_2281438=_2281444.
  411.  
  412. 'Float.sinh'(_2283032,_2283034,_2283036,_2283038):-freeze(_2283036,'blocked_Float.sinh'(_2283032,_2283034,_2283036,_2283038)).
  413. 'blocked_Float.sinh'(_2283108,_2283282,_2283288,_2283294):-hnf('Prelude.$#'(partcall(1,'Float.prim_sinh',[]),_2283108),_2283282,_2283288,_2283294).
  414.  
  415. 'Float.prim_sinh'(_2284258,_2284260,_2284262,_2284264):-freeze(_2284262,'blocked_Float.prim_sinh'(_2284258,_2284260,_2284262,_2284264)).
  416. 'blocked_Float.prim_sinh'(_2284326,_2284332,_2284338,_2284344):-derefRoot(_2284326,_2284372),prim_sinh(_2284372,_2284332),_2284338=_2284344.
  417.  
  418. 'Float.cosh'(_2285932,_2285934,_2285936,_2285938):-freeze(_2285936,'blocked_Float.cosh'(_2285932,_2285934,_2285936,_2285938)).
  419. 'blocked_Float.cosh'(_2286008,_2286182,_2286188,_2286194):-hnf('Prelude.$#'(partcall(1,'Float.prim_cosh',[]),_2286008),_2286182,_2286188,_2286194).
  420.  
  421. 'Float.prim_cosh'(_2287158,_2287160,_2287162,_2287164):-freeze(_2287162,'blocked_Float.prim_cosh'(_2287158,_2287160,_2287162,_2287164)).
  422. 'blocked_Float.prim_cosh'(_2287226,_2287232,_2287238,_2287244):-derefRoot(_2287226,_2287272),prim_cosh(_2287272,_2287232),_2287238=_2287244.
  423.  
  424. 'Float.tanh'(_2288832,_2288834,_2288836,_2288838):-freeze(_2288836,'blocked_Float.tanh'(_2288832,_2288834,_2288836,_2288838)).
  425. 'blocked_Float.tanh'(_2288908,_2289082,_2289088,_2289094):-hnf('Prelude.$#'(partcall(1,'Float.prim_tanh',[]),_2288908),_2289082,_2289088,_2289094).
  426.  
  427. 'Float.prim_tanh'(_2290058,_2290060,_2290062,_2290064):-freeze(_2290062,'blocked_Float.prim_tanh'(_2290058,_2290060,_2290062,_2290064)).
  428. 'blocked_Float.prim_tanh'(_2290126,_2290132,_2290138,_2290144):-derefRoot(_2290126,_2290172),prim_tanh(_2290172,_2290132),_2290138=_2290144.
  429.  
  430. 'Float.asinh'(_2291768,_2291770,_2291772,_2291774):-freeze(_2291772,'blocked_Float.asinh'(_2291768,_2291770,_2291772,_2291774)).
  431. 'blocked_Float.asinh'(_2291844,_2292018,_2292024,_2292030):-hnf('Prelude.$#'(partcall(1,'Float.prim_asinh',[]),_2291844),_2292018,_2292024,_2292030).
  432.  
  433. 'Float.prim_asinh'(_2293018,_2293020,_2293022,_2293024):-freeze(_2293022,'blocked_Float.prim_asinh'(_2293018,_2293020,_2293022,_2293024)).
  434. 'blocked_Float.prim_asinh'(_2293086,_2293092,_2293098,_2293104):-derefRoot(_2293086,_2293132),prim_asinh(_2293132,_2293092),_2293098=_2293104.
  435.  
  436. 'Float.acosh'(_2294728,_2294730,_2294732,_2294734):-freeze(_2294732,'blocked_Float.acosh'(_2294728,_2294730,_2294732,_2294734)).
  437. 'blocked_Float.acosh'(_2294804,_2294978,_2294984,_2294990):-hnf('Prelude.$#'(partcall(1,'Float.prim_acosh',[]),_2294804),_2294978,_2294984,_2294990).
  438.  
  439. 'Float.prim_acosh'(_2295978,_2295980,_2295982,_2295984):-freeze(_2295982,'blocked_Float.prim_acosh'(_2295978,_2295980,_2295982,_2295984)).
  440. 'blocked_Float.prim_acosh'(_2296046,_2296052,_2296058,_2296064):-derefRoot(_2296046,_2296092),prim_acosh(_2296092,_2296052),_2296058=_2296064.
  441.  
  442. 'Float.atanh'(_2297688,_2297690,_2297692,_2297694):-freeze(_2297692,'blocked_Float.atanh'(_2297688,_2297690,_2297692,_2297694)).
  443. 'blocked_Float.atanh'(_2297764,_2297938,_2297944,_2297950):-hnf('Prelude.$#'(partcall(1,'Float.prim_atanh',[]),_2297764),_2297938,_2297944,_2297950).
  444.  
  445. 'Float.prim_atanh'(_2298938,_2298940,_2298942,_2298944):-freeze(_2298942,'blocked_Float.prim_atanh'(_2298938,_2298940,_2298942,_2298944)).
  446. 'blocked_Float.prim_atanh'(_2299006,_2299012,_2299018,_2299024):-derefRoot(_2299006,_2299052),prim_atanh(_2299052,_2299012),_2299018=_2299024.
  447.  
  448. 'Float.\'5E..powaux.12._\'23caseor0'(_2301314,_2301316,_2301318,_2301320,_2301322):-freeze(_2301320,'blocked_Float.\'5E..powaux.12._\'23caseor0'(_2301314,_2301316,_2301318,_2301320,_2301322)).
  449. 'blocked_Float.\'5E..powaux.12._\'23caseor0'(_2301400,_2301418,_2301862,_2301868,_2301874):-hnf(_2301400,_2303410,_2301868,_2303386),'blocked_Float.\'5E..powaux.12._\'23caseor0_1'(_2303410,_2301418,_2301862,_2303386,_2301874).
  450.  
  451. 'blocked_Float.\'5E..powaux.12._\'23caseor0_1'(_2303810,_2303812,_2303814,_2303816,_2303818):-freeze(_2303816,freeze(_2303810,'blocked_blocked_Float.\'5E..powaux.12._\'23caseor0_1'(_2303810,_2303812,_2303814,_2303816,_2303818))).
  452. 'blocked_blocked_Float.\'5E..powaux.12._\'23caseor0_1'('Prelude.True',_2301418,_2304152,_2304158,_2304164):-hnf(_2301418,_2304152,_2304158,_2304164).
  453. 'blocked_blocked_Float.\'5E..powaux.12._\'23caseor0_1'('Prelude.False',_2301418,1.0,_2304890,_2304890):-!.
  454. 'blocked_blocked_Float.\'5E..powaux.12._\'23caseor0_1'('FAIL'(_2305336),_2301418,'FAIL'(_2305336),_2305350,_2305350).
  455.  
  456. :-costCenters(['']).
  457.  
  458.  
  459.  
  460. % See https://github.com/TeamSPoon/pakcs_lib/blob/master/src/lib_src/prim_float.pl
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement