svf-tools 1.0.897 → 1.0.899

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. package/SVF-doxygen/html/AbstractExecution_8cpp.html +1 -1
  2. package/SVF-doxygen/html/AbstractExecution_8cpp_source.html +1638 -1659
  3. package/SVF-doxygen/html/AbstractExecution_8h_source.html +49 -49
  4. package/SVF-doxygen/html/AbstractPointsToDS_8h_source.html +1 -1
  5. package/SVF-doxygen/html/AccessPath_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/AccessPath_8h_source.html +2 -2
  7. package/SVF-doxygen/html/AddressValue_8h_source.html +1 -1
  8. package/SVF-doxygen/html/AndersenPWC_8h_source.html +4 -4
  9. package/SVF-doxygen/html/AndersenSCD_8cpp_source.html +3 -3
  10. package/SVF-doxygen/html/AndersenSFR_8cpp_source.html +3 -3
  11. package/SVF-doxygen/html/AndersenStat_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/AndersenWaveDiff_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/Andersen_8cpp_source.html +5 -5
  14. package/SVF-doxygen/html/Andersen_8h_source.html +3 -3
  15. package/SVF-doxygen/html/BoundedZ3Expr_8cpp_source.html +4 -4
  16. package/SVF-doxygen/html/BoundedZ3Expr_8h_source.html +400 -380
  17. package/SVF-doxygen/html/BufOverflowChecker_8cpp_source.html +29 -28
  18. package/SVF-doxygen/html/BufOverflowChecker_8h_source.html +1 -1
  19. package/SVF-doxygen/html/CDGBuilder_8cpp_source.html +1 -1
  20. package/SVF-doxygen/html/CDGBuilder_8h_source.html +1 -1
  21. package/SVF-doxygen/html/CDG_8h_source.html +2 -2
  22. package/SVF-doxygen/html/CFGNormalizer_8cpp_source.html +3 -3
  23. package/SVF-doxygen/html/CFGNormalizer_8h_source.html +3 -3
  24. package/SVF-doxygen/html/CFGrammar_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/CFGrammar_8h_source.html +3 -3
  26. package/SVF-doxygen/html/CFLAlias_8h_source.html +2 -2
  27. package/SVF-doxygen/html/CFLGraphBuilder_8cpp_source.html +1 -1
  28. package/SVF-doxygen/html/CFLGraphBuilder_8h_source.html +1 -1
  29. package/SVF-doxygen/html/CFLSVFGBuilder_8cpp_source.html +1 -1
  30. package/SVF-doxygen/html/CFLSVFGBuilder_8h_source.html +2 -2
  31. package/SVF-doxygen/html/CFLSolver_8h_source.html +1 -1
  32. package/SVF-doxygen/html/CHGBuilder_8cpp_source.html +1 -1
  33. package/SVF-doxygen/html/CHG_8h_source.html +2 -2
  34. package/SVF-doxygen/html/CSC_8cpp_source.html +2 -2
  35. package/SVF-doxygen/html/CSC_8h_source.html +3 -3
  36. package/SVF-doxygen/html/ConditionalPT_8h_source.html +3 -3
  37. package/SVF-doxygen/html/ConsExeState_8cpp_source.html +6 -6
  38. package/SVF-doxygen/html/ConsExeState_8h_source.html +6 -6
  39. package/SVF-doxygen/html/ConsGEdge_8h_source.html +2 -2
  40. package/SVF-doxygen/html/ConsG_8cpp_source.html +14 -14
  41. package/SVF-doxygen/html/ConsG_8h_source.html +4 -4
  42. package/SVF-doxygen/html/ContextDDA_8cpp_source.html +4 -4
  43. package/SVF-doxygen/html/ContextDDA_8h_source.html +2 -2
  44. package/SVF-doxygen/html/CoreBitVector_8h_source.html +1 -1
  45. package/SVF-doxygen/html/CppUtil_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/CppUtil_8h_source.html +1 -1
  47. package/SVF-doxygen/html/CxtStmt_8h_source.html +1 -1
  48. package/SVF-doxygen/html/DCHG_8cpp_source.html +3 -3
  49. package/SVF-doxygen/html/DCHG_8h_source.html +2 -2
  50. package/SVF-doxygen/html/DDAClient_8cpp_source.html +2 -2
  51. package/SVF-doxygen/html/DDAClient_8h_source.html +3 -3
  52. package/SVF-doxygen/html/DDAPass_8cpp_source.html +2 -2
  53. package/SVF-doxygen/html/DDAPass_8h_source.html +1 -1
  54. package/SVF-doxygen/html/DDAVFSolver_8h_source.html +2 -2
  55. package/SVF-doxygen/html/DPItem_8h_source.html +2 -2
  56. package/SVF-doxygen/html/ExeState_8cpp_source.html +1 -1
  57. package/SVF-doxygen/html/ExeState_8h_source.html +1 -1
  58. package/SVF-doxygen/html/FSMPTA_8cpp_source.html +1 -1
  59. package/SVF-doxygen/html/FSMPTA_8h_source.html +2 -2
  60. package/SVF-doxygen/html/FlowDDA_8cpp_source.html +4 -4
  61. package/SVF-doxygen/html/FlowDDA_8h_source.html +1 -1
  62. package/SVF-doxygen/html/FlowSensitiveStat_8cpp_source.html +2 -2
  63. package/SVF-doxygen/html/FlowSensitive_8cpp_source.html +6 -6
  64. package/SVF-doxygen/html/FlowSensitive_8h_source.html +2 -2
  65. package/SVF-doxygen/html/GeneralType_8h.html +8 -0
  66. package/SVF-doxygen/html/GeneralType_8h_source.html +110 -102
  67. package/SVF-doxygen/html/GenericGraph_8h_source.html +2 -2
  68. package/SVF-doxygen/html/GrammarBuilder_8h_source.html +1 -1
  69. package/SVF-doxygen/html/ICFGBuilder_8cpp_source.html +1 -1
  70. package/SVF-doxygen/html/ICFGBuilder_8h_source.html +1 -1
  71. package/SVF-doxygen/html/ICFGEdge_8h_source.html +3 -3
  72. package/SVF-doxygen/html/ICFGNode_8h_source.html +1 -1
  73. package/SVF-doxygen/html/ICFGSimplification_8cpp_source.html +2 -2
  74. package/SVF-doxygen/html/ICFGStat_8h_source.html +1 -1
  75. package/SVF-doxygen/html/ICFG_8cpp_source.html +3 -3
  76. package/SVF-doxygen/html/ICFG_8h_source.html +2 -2
  77. package/SVF-doxygen/html/IRGraph_8cpp_source.html +2 -2
  78. package/SVF-doxygen/html/IRGraph_8h_source.html +2 -2
  79. package/SVF-doxygen/html/IntervalExeState_8cpp_source.html +2 -2
  80. package/SVF-doxygen/html/IntervalExeState_8h_source.html +4 -4
  81. package/SVF-doxygen/html/IntervalValue_8h_source.html +863 -802
  82. package/SVF-doxygen/html/LLVMLoopAnalysis_8cpp_source.html +1 -1
  83. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +335 -316
  84. package/SVF-doxygen/html/LLVMModule_8h_source.html +11 -11
  85. package/SVF-doxygen/html/LLVMUtil_8cpp_source.html +2 -2
  86. package/SVF-doxygen/html/LLVMUtil_8h_source.html +1 -1
  87. package/SVF-doxygen/html/LeakChecker_8h_source.html +1 -1
  88. package/SVF-doxygen/html/LockAnalysis_8cpp_source.html +2 -2
  89. package/SVF-doxygen/html/LockAnalysis_8h_source.html +3 -3
  90. package/SVF-doxygen/html/LockResultValidator_8cpp_source.html +1 -1
  91. package/SVF-doxygen/html/LockResultValidator_8h_source.html +2 -2
  92. package/SVF-doxygen/html/MHP_8cpp_source.html +3 -3
  93. package/SVF-doxygen/html/MHP_8h_source.html +3 -3
  94. package/SVF-doxygen/html/MSSAMuChi_8h_source.html +4 -4
  95. package/SVF-doxygen/html/MTAAnnotator_8cpp_source.html +1 -1
  96. package/SVF-doxygen/html/MTAAnnotator_8h_source.html +1 -1
  97. package/SVF-doxygen/html/MTAResultValidator_8cpp_source.html +5 -5
  98. package/SVF-doxygen/html/MTAStat_8cpp_source.html +1 -1
  99. package/SVF-doxygen/html/MTAStat_8h_source.html +1 -1
  100. package/SVF-doxygen/html/MTA_8cpp_source.html +1 -1
  101. package/SVF-doxygen/html/MTA_8h_source.html +1 -1
  102. package/SVF-doxygen/html/MemPartition_8h_source.html +2 -2
  103. package/SVF-doxygen/html/MemRegion_8cpp_source.html +4 -4
  104. package/SVF-doxygen/html/MemRegion_8h_source.html +5 -5
  105. package/SVF-doxygen/html/MemSSA_8cpp_source.html +4 -4
  106. package/SVF-doxygen/html/MemSSA_8h_source.html +5 -5
  107. package/SVF-doxygen/html/MutablePointsToDS_8h_source.html +1 -1
  108. package/SVF-doxygen/html/NodeIDAllocator_8cpp_source.html +2 -2
  109. package/SVF-doxygen/html/NodeIDAllocator_8h_source.html +2 -2
  110. package/SVF-doxygen/html/NumericLiteral_8h_source.html +465 -424
  111. package/SVF-doxygen/html/ObjTypeInference_8cpp_source.html +3 -3
  112. package/SVF-doxygen/html/ObjTypeInference_8h_source.html +2 -2
  113. package/SVF-doxygen/html/Options_8cpp_source.html +10 -1
  114. package/SVF-doxygen/html/Options_8h_source.html +8 -4
  115. package/SVF-doxygen/html/PAGBuilderFromFile_8cpp_source.html +195 -137
  116. package/SVF-doxygen/html/PAGBuilderFromFile_8h_source.html +3 -3
  117. package/SVF-doxygen/html/PCG_8cpp_source.html +1 -1
  118. package/SVF-doxygen/html/PCG_8h_source.html +1 -1
  119. package/SVF-doxygen/html/PTACallGraph_8cpp_source.html +1 -1
  120. package/SVF-doxygen/html/PTACallGraph_8h_source.html +4 -4
  121. package/SVF-doxygen/html/PTAStat_8cpp_source.html +1 -1
  122. package/SVF-doxygen/html/PersistentPointsToCache_8h_source.html +2 -2
  123. package/SVF-doxygen/html/PersistentPointsToDS_8h_source.html +2 -2
  124. package/SVF-doxygen/html/PointerAnalysisImpl_8cpp_source.html +2 -2
  125. package/SVF-doxygen/html/PointerAnalysisImpl_8h_source.html +3 -3
  126. package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +1 -1
  127. package/SVF-doxygen/html/PointerAnalysis_8h_source.html +5 -5
  128. package/SVF-doxygen/html/PointsTo_8cpp_source.html +3 -3
  129. package/SVF-doxygen/html/PointsTo_8h_source.html +3 -3
  130. package/SVF-doxygen/html/ProgSlice_8cpp_source.html +1 -1
  131. package/SVF-doxygen/html/ProgSlice_8h_source.html +2 -2
  132. package/SVF-doxygen/html/RelExeState_8cpp_source.html +5 -5
  133. package/SVF-doxygen/html/RelExeState_8h_source.html +6 -6
  134. package/SVF-doxygen/html/RelationSolver_8cpp.html +2 -0
  135. package/SVF-doxygen/html/RelationSolver_8cpp_source.html +386 -378
  136. package/SVF-doxygen/html/RelationSolver_8h_source.html +11 -11
  137. package/SVF-doxygen/html/SCC_8h_source.html +2 -2
  138. package/SVF-doxygen/html/SVFBugReport_8h_source.html +1 -1
  139. package/SVF-doxygen/html/SVFFileSystem_8cpp_source.html +1937 -1934
  140. package/SVF-doxygen/html/SVFFileSystem_8h.html +1 -1
  141. package/SVF-doxygen/html/SVFFileSystem_8h_source.html +59 -59
  142. package/SVF-doxygen/html/SVFGEdge_8h_source.html +2 -2
  143. package/SVF-doxygen/html/SVFGNode_8h_source.html +2 -2
  144. package/SVF-doxygen/html/SVFGOPT_8cpp_source.html +1 -1
  145. package/SVF-doxygen/html/SVFGOPT_8h_source.html +3 -3
  146. package/SVF-doxygen/html/SVFGReadWrite_8cpp_source.html +3 -3
  147. package/SVF-doxygen/html/SVFGStat_8cpp_source.html +1 -1
  148. package/SVF-doxygen/html/SVFGStat_8h_source.html +3 -3
  149. package/SVF-doxygen/html/SVFG_8cpp_source.html +2 -2
  150. package/SVF-doxygen/html/SVFG_8h_source.html +2 -2
  151. package/SVF-doxygen/html/SVFIR2ConsExeState_8cpp_source.html +60 -60
  152. package/SVF-doxygen/html/SVFIR2ConsExeState_8h_source.html +9 -9
  153. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +1101 -886
  154. package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +173 -154
  155. package/SVF-doxygen/html/SVFIR2Relation_8cpp_source.html +35 -35
  156. package/SVF-doxygen/html/SVFIRBuilder_8cpp_source.html +17 -17
  157. package/SVF-doxygen/html/SVFIRBuilder_8h_source.html +172 -121
  158. package/SVF-doxygen/html/SVFIRExtAPI_8cpp_source.html +5 -5
  159. package/SVF-doxygen/html/SVFIR_8cpp_source.html +24 -22
  160. package/SVF-doxygen/html/SVFIR_8h_source.html +55 -53
  161. package/SVF-doxygen/html/SVFLoop_8h_source.html +1 -1
  162. package/SVF-doxygen/html/SVFStat_8cpp_source.html +1 -1
  163. package/SVF-doxygen/html/SVFStat_8h_source.html +1 -1
  164. package/SVF-doxygen/html/SVFStatements_8cpp_source.html +20 -20
  165. package/SVF-doxygen/html/SVFStatements_8h_source.html +979 -955
  166. package/SVF-doxygen/html/SVFType_8cpp_source.html +1 -1
  167. package/SVF-doxygen/html/SVFType_8h_source.html +4 -4
  168. package/SVF-doxygen/html/SVFUtil_8h_source.html +2 -2
  169. package/SVF-doxygen/html/SVFValue_8cpp_source.html +1 -1
  170. package/SVF-doxygen/html/SVFValue_8h_source.html +3 -3
  171. package/SVF-doxygen/html/SVFVariables_8h_source.html +1 -1
  172. package/SVF-doxygen/html/SaberCheckerAPI_8h_source.html +1 -1
  173. package/SVF-doxygen/html/SaberCondAllocator_8cpp_source.html +10 -10
  174. package/SVF-doxygen/html/SaberCondAllocator_8h_source.html +8 -8
  175. package/SVF-doxygen/html/SaberSVFGBuilder_8cpp_source.html +2 -2
  176. package/SVF-doxygen/html/SaberSVFGBuilder_8h_source.html +2 -2
  177. package/SVF-doxygen/html/SingleAbsValue_8h_source.html +6 -6
  178. package/SVF-doxygen/html/SparseBitVector_8h_source.html +3 -3
  179. package/SVF-doxygen/html/SrcSnkDDA_8cpp_source.html +1 -1
  180. package/SVF-doxygen/html/SrcSnkDDA_8h_source.html +2 -2
  181. package/SVF-doxygen/html/Steensgaard_8cpp_source.html +2 -2
  182. package/SVF-doxygen/html/Steensgaard_8h_source.html +4 -4
  183. package/SVF-doxygen/html/SymState_8h_source.html +2 -2
  184. package/SVF-doxygen/html/SymbolTableBuilder_8cpp_source.html +4 -4
  185. package/SVF-doxygen/html/SymbolTableBuilder_8h_source.html +1 -1
  186. package/SVF-doxygen/html/SymbolTableInfo_8cpp_source.html +3 -3
  187. package/SVF-doxygen/html/SymbolTableInfo_8h_source.html +4 -4
  188. package/SVF-doxygen/html/TCT_8cpp_source.html +3 -3
  189. package/SVF-doxygen/html/TCT_8h_source.html +4 -4
  190. package/SVF-doxygen/html/ThreadAPI_8cpp_source.html +1 -1
  191. package/SVF-doxygen/html/ThreadAPI_8h_source.html +1 -1
  192. package/SVF-doxygen/html/ThreadCallGraph_8cpp_source.html +1 -1
  193. package/SVF-doxygen/html/ThreadCallGraph_8h_source.html +3 -3
  194. package/SVF-doxygen/html/VFGEdge_8h_source.html +1 -1
  195. package/SVF-doxygen/html/VFGNode_8h_source.html +12 -12
  196. package/SVF-doxygen/html/VFG_8cpp_source.html +18 -18
  197. package/SVF-doxygen/html/VFG_8h_source.html +17 -17
  198. package/SVF-doxygen/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
  199. package/SVF-doxygen/html/VersionedFlowSensitive_8cpp_source.html +4 -4
  200. package/SVF-doxygen/html/VersionedFlowSensitive_8h_source.html +4 -4
  201. package/SVF-doxygen/html/WPAFSSolver_8h_source.html +1 -1
  202. package/SVF-doxygen/html/WPASolver_8h_source.html +2 -2
  203. package/SVF-doxygen/html/WTO_8h_source.html +2 -2
  204. package/SVF-doxygen/html/WorkList_8h_source.html +1 -1
  205. package/SVF-doxygen/html/Z3Expr_8cpp_source.html +5 -5
  206. package/SVF-doxygen/html/Z3Expr_8h_source.html +303 -294
  207. package/SVF-doxygen/html/ae_8cpp_source.html +6 -6
  208. package/SVF-doxygen/html/classSVF_1_1AEStat.html +119 -119
  209. package/SVF-doxygen/html/classSVF_1_1AbstractExecution.html +1517 -1538
  210. package/SVF-doxygen/html/classSVF_1_1AccessPath.html +1 -1
  211. package/SVF-doxygen/html/classSVF_1_1Andersen.html +5 -5
  212. package/SVF-doxygen/html/classSVF_1_1AndersenBase.html +1 -1
  213. package/SVF-doxygen/html/classSVF_1_1AndersenSCD.html +3 -3
  214. package/SVF-doxygen/html/classSVF_1_1AndersenSFR.html +3 -3
  215. package/SVF-doxygen/html/classSVF_1_1AndersenStat.html +1 -1
  216. package/SVF-doxygen/html/classSVF_1_1AndersenWaveDiff.html +1 -1
  217. package/SVF-doxygen/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  218. package/SVF-doxygen/html/classSVF_1_1BinaryOPStmt.html +68 -68
  219. package/SVF-doxygen/html/classSVF_1_1BoundedZ3Expr-members.html +77 -72
  220. package/SVF-doxygen/html/classSVF_1_1BoundedZ3Expr.html +450 -294
  221. package/SVF-doxygen/html/classSVF_1_1BranchStmt.html +51 -51
  222. package/SVF-doxygen/html/classSVF_1_1BranchVFGNode.html +4 -4
  223. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.html +7 -7
  224. package/SVF-doxygen/html/classSVF_1_1CDGBuilder.html +1 -1
  225. package/SVF-doxygen/html/classSVF_1_1CFGNormalizer.html +3 -3
  226. package/SVF-doxygen/html/classSVF_1_1CFLSVFGBuilder.html +1 -1
  227. package/SVF-doxygen/html/classSVF_1_1CHGBuilder.html +1 -1
  228. package/SVF-doxygen/html/classSVF_1_1CSC.html +2 -2
  229. package/SVF-doxygen/html/classSVF_1_1CallPE.html +35 -35
  230. package/SVF-doxygen/html/classSVF_1_1CmpStmt.html +97 -97
  231. package/SVF-doxygen/html/classSVF_1_1CondPTAImpl.html +1 -1
  232. package/SVF-doxygen/html/classSVF_1_1ConsExeState.html +5 -5
  233. package/SVF-doxygen/html/classSVF_1_1ConstraintGraph.html +13 -13
  234. package/SVF-doxygen/html/classSVF_1_1ContextDDA.html +5 -5
  235. package/SVF-doxygen/html/classSVF_1_1CopyStmt-members.html +48 -33
  236. package/SVF-doxygen/html/classSVF_1_1CopyStmt.html +206 -65
  237. package/SVF-doxygen/html/classSVF_1_1DCHGraph.html +3 -3
  238. package/SVF-doxygen/html/classSVF_1_1DDAPass.html +2 -2
  239. package/SVF-doxygen/html/classSVF_1_1DDAVFSolver.html +1 -1
  240. package/SVF-doxygen/html/classSVF_1_1ExeState.html +1 -1
  241. package/SVF-doxygen/html/classSVF_1_1FlowDDA.html +3 -3
  242. package/SVF-doxygen/html/classSVF_1_1FlowSensitive.html +5 -5
  243. package/SVF-doxygen/html/classSVF_1_1FlowSensitiveStat.html +2 -2
  244. package/SVF-doxygen/html/classSVF_1_1ForkJoinAnalysis.html +3 -3
  245. package/SVF-doxygen/html/classSVF_1_1FunptrDDAClient.html +1 -1
  246. package/SVF-doxygen/html/classSVF_1_1GenericGraphReader.html +1 -1
  247. package/SVF-doxygen/html/classSVF_1_1GepStmt.html +56 -56
  248. package/SVF-doxygen/html/classSVF_1_1GrammarBase.html +1 -1
  249. package/SVF-doxygen/html/classSVF_1_1ICFG.html +3 -3
  250. package/SVF-doxygen/html/classSVF_1_1ICFGBuilder.html +1 -1
  251. package/SVF-doxygen/html/classSVF_1_1ICFGWriter.html +11 -11
  252. package/SVF-doxygen/html/classSVF_1_1IntervalESBase.html +2 -2
  253. package/SVF-doxygen/html/classSVF_1_1IntervalValue-members.html +40 -35
  254. package/SVF-doxygen/html/classSVF_1_1IntervalValue.html +512 -307
  255. package/SVF-doxygen/html/classSVF_1_1LLVMLoopAnalysis.html +1 -1
  256. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +331 -312
  257. package/SVF-doxygen/html/classSVF_1_1LoadStmt.html +19 -19
  258. package/SVF-doxygen/html/classSVF_1_1LockAnalysis.html +2 -2
  259. package/SVF-doxygen/html/classSVF_1_1LockResultValidator.html +1 -1
  260. package/SVF-doxygen/html/classSVF_1_1MHP.html +2 -2
  261. package/SVF-doxygen/html/classSVF_1_1MRGenerator.html +3 -3
  262. package/SVF-doxygen/html/classSVF_1_1MTAAnnotator.html +1 -1
  263. package/SVF-doxygen/html/classSVF_1_1MTAResultValidator.html +4 -4
  264. package/SVF-doxygen/html/classSVF_1_1MTASVFGBuilder.html +1 -1
  265. package/SVF-doxygen/html/classSVF_1_1MTAStat.html +1 -1
  266. package/SVF-doxygen/html/classSVF_1_1MemSSA.html +4 -4
  267. package/SVF-doxygen/html/classSVF_1_1MultiOpndStmt.html +48 -48
  268. package/SVF-doxygen/html/classSVF_1_1MutableDFPTData.html +1 -1
  269. package/SVF-doxygen/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +1 -1
  270. package/SVF-doxygen/html/classSVF_1_1NumericLiteral-members.html +50 -43
  271. package/SVF-doxygen/html/classSVF_1_1NumericLiteral.html +574 -343
  272. package/SVF-doxygen/html/classSVF_1_1ObjTypeInference.html +3 -3
  273. package/SVF-doxygen/html/classSVF_1_1Options-members.html +129 -128
  274. package/SVF-doxygen/html/classSVF_1_1Options.html +26 -0
  275. package/SVF-doxygen/html/classSVF_1_1PAGBuilderFromFile.html +204 -135
  276. package/SVF-doxygen/html/classSVF_1_1PCG.html +1 -1
  277. package/SVF-doxygen/html/classSVF_1_1POCRSolver.html +1 -1
  278. package/SVF-doxygen/html/classSVF_1_1PTACallGraph.html +1 -1
  279. package/SVF-doxygen/html/classSVF_1_1PTAStat.html +1 -1
  280. package/SVF-doxygen/html/classSVF_1_1PersistentDFPTData.html +1 -1
  281. package/SVF-doxygen/html/classSVF_1_1PersistentDiffPTData.html +1 -1
  282. package/SVF-doxygen/html/classSVF_1_1PersistentPTData.html +1 -1
  283. package/SVF-doxygen/html/classSVF_1_1PersistentPointsToCache.html +1 -1
  284. package/SVF-doxygen/html/classSVF_1_1PhiStmt.html +46 -46
  285. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +1 -1
  286. package/SVF-doxygen/html/classSVF_1_1PointsTo.html +1 -1
  287. package/SVF-doxygen/html/classSVF_1_1ProgSlice.html +1 -1
  288. package/SVF-doxygen/html/classSVF_1_1RaceResultValidator.html +1 -1
  289. package/SVF-doxygen/html/classSVF_1_1ReaderIDToObjMap.html +2 -2
  290. package/SVF-doxygen/html/classSVF_1_1ReaderPtrPool.html +2 -2
  291. package/SVF-doxygen/html/classSVF_1_1RelExeState.html +6 -6
  292. package/SVF-doxygen/html/classSVF_1_1RelationSolver-members.html +1 -1
  293. package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +362 -358
  294. package/SVF-doxygen/html/classSVF_1_1RetPE.html +35 -35
  295. package/SVF-doxygen/html/classSVF_1_1SVFG.html +3 -3
  296. package/SVF-doxygen/html/classSVF_1_1SVFGOPT.html +1 -1
  297. package/SVF-doxygen/html/classSVF_1_1SVFGStat.html +1 -1
  298. package/SVF-doxygen/html/classSVF_1_1SVFIR-members.html +1 -1
  299. package/SVF-doxygen/html/classSVF_1_1SVFIR.html +32 -25
  300. package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState.html +51 -51
  301. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState-members.html +49 -40
  302. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +1346 -909
  303. package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder-members.html +62 -61
  304. package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +211 -131
  305. package/SVF-doxygen/html/classSVF_1_1SVFIRReader.html +1122 -1121
  306. package/SVF-doxygen/html/classSVF_1_1SVFIRWriter.html +429 -427
  307. package/SVF-doxygen/html/classSVF_1_1SVFLoopAndDomInfo.html +1 -1
  308. package/SVF-doxygen/html/classSVF_1_1SVFModuleReader.html +1 -1
  309. package/SVF-doxygen/html/classSVF_1_1SVFModuleWriter.html +23 -23
  310. package/SVF-doxygen/html/classSVF_1_1SVFStat.html +1 -1
  311. package/SVF-doxygen/html/classSVF_1_1SaberCondAllocator.html +14 -14
  312. package/SVF-doxygen/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
  313. package/SVF-doxygen/html/classSVF_1_1SelectStmt.html +38 -38
  314. package/SVF-doxygen/html/classSVF_1_1SingleAbsValue-members.html +96 -91
  315. package/SVF-doxygen/html/classSVF_1_1SingleAbsValue.html +19 -5
  316. package/SVF-doxygen/html/classSVF_1_1SrcSnkDDA.html +1 -1
  317. package/SVF-doxygen/html/classSVF_1_1StInfo.html +1 -1
  318. package/SVF-doxygen/html/classSVF_1_1Steensgaard.html +2 -2
  319. package/SVF-doxygen/html/classSVF_1_1StoreStmt.html +17 -17
  320. package/SVF-doxygen/html/classSVF_1_1SymbolTableBuilder.html +4 -4
  321. package/SVF-doxygen/html/classSVF_1_1SymbolTableInfo.html +3 -3
  322. package/SVF-doxygen/html/classSVF_1_1SymbolTableInfoReader.html +1 -1
  323. package/SVF-doxygen/html/classSVF_1_1TCT.html +4 -4
  324. package/SVF-doxygen/html/classSVF_1_1TDForkPE.html +22 -22
  325. package/SVF-doxygen/html/classSVF_1_1TDJoinPE.html +21 -21
  326. package/SVF-doxygen/html/classSVF_1_1ThreadAPI.html +1 -1
  327. package/SVF-doxygen/html/classSVF_1_1ThreadCallGraph.html +1 -1
  328. package/SVF-doxygen/html/classSVF_1_1UnaryOPStmt.html +44 -44
  329. package/SVF-doxygen/html/classSVF_1_1VFG.html +17 -17
  330. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitive.html +4 -4
  331. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitiveStat.html +3 -3
  332. package/SVF-doxygen/html/classSVF_1_1WPAFSSolver.html +2 -2
  333. package/SVF-doxygen/html/classSVF_1_1WPAMinimumSolver.html +2 -2
  334. package/SVF-doxygen/html/classSVF_1_1WPASCCSolver.html +2 -2
  335. package/SVF-doxygen/html/classSVF_1_1WPASolver.html +1 -1
  336. package/SVF-doxygen/html/classSVF_1_1Z3Expr-members.html +2 -2
  337. package/SVF-doxygen/html/classSVF_1_1Z3Expr.html +227 -221
  338. package/SVF-doxygen/html/classSymblicAbstractionTest.html +6 -6
  339. package/SVF-doxygen/html/fastcluster__dm_8cpp_8inc_source.html +1 -1
  340. package/SVF-doxygen/html/functions_a.html +11 -8
  341. package/SVF-doxygen/html/functions_b.html +8 -5
  342. package/SVF-doxygen/html/functions_c.html +23 -14
  343. package/SVF-doxygen/html/functions_e.html +1 -1
  344. package/SVF-doxygen/html/functions_enum.html +3 -0
  345. package/SVF-doxygen/html/functions_eval_b.html +3 -0
  346. package/SVF-doxygen/html/functions_eval_c.html +3 -0
  347. package/SVF-doxygen/html/functions_eval_f.html +9 -0
  348. package/SVF-doxygen/html/functions_eval_i.html +3 -0
  349. package/SVF-doxygen/html/functions_eval_p.html +3 -0
  350. package/SVF-doxygen/html/functions_eval_s.html +6 -0
  351. package/SVF-doxygen/html/functions_eval_t.html +3 -0
  352. package/SVF-doxygen/html/functions_eval_u.html +3 -0
  353. package/SVF-doxygen/html/functions_eval_z.html +79 -0
  354. package/SVF-doxygen/html/functions_f.html +21 -12
  355. package/SVF-doxygen/html/functions_func.html +2 -2
  356. package/SVF-doxygen/html/functions_func_b.html +3 -3
  357. package/SVF-doxygen/html/functions_func_g.html +47 -12
  358. package/SVF-doxygen/html/functions_func_i.html +19 -9
  359. package/SVF-doxygen/html/functions_func_n.html +1 -1
  360. package/SVF-doxygen/html/functions_func_p.html +1 -1
  361. package/SVF-doxygen/html/functions_func_z.html +1 -1
  362. package/SVF-doxygen/html/functions_g.html +54 -19
  363. package/SVF-doxygen/html/functions_i.html +18 -5
  364. package/SVF-doxygen/html/functions_l.html +3 -3
  365. package/SVF-doxygen/html/functions_o.html +15 -15
  366. package/SVF-doxygen/html/functions_p.html +28 -29
  367. package/SVF-doxygen/html/functions_r.html +1 -1
  368. package/SVF-doxygen/html/functions_s.html +24 -16
  369. package/SVF-doxygen/html/functions_t.html +7 -4
  370. package/SVF-doxygen/html/functions_u.html +6 -3
  371. package/SVF-doxygen/html/functions_v.html +4 -6
  372. package/SVF-doxygen/html/functions_vars_a.html +3 -0
  373. package/SVF-doxygen/html/functions_vars_c.html +3 -0
  374. package/SVF-doxygen/html/functions_w.html +13 -7
  375. package/SVF-doxygen/html/functions_z.html +4 -1
  376. package/SVF-doxygen/html/menudata.js +2 -1
  377. package/SVF-doxygen/html/namespaceSVF.html +689 -617
  378. package/SVF-doxygen/html/namespaceSVF_1_1LLVMUtil.html +1 -1
  379. package/SVF-doxygen/html/namespaceSVF_1_1SVFUtil.html +1 -1
  380. package/SVF-doxygen/html/namespaceSVF_1_1cppUtil.html +1 -1
  381. package/SVF-doxygen/html/namespacemembers_s.html +6 -0
  382. package/SVF-doxygen/html/namespacemembers_type_s.html +6 -0
  383. package/SVF-doxygen/html/namespacemembers_type_u.html +6 -0
  384. package/SVF-doxygen/html/namespacemembers_u.html +6 -0
  385. package/SVF-doxygen/html/search/all_1.js +135 -134
  386. package/SVF-doxygen/html/search/all_10.js +326 -325
  387. package/SVF-doxygen/html/search/all_11.js +226 -226
  388. package/SVF-doxygen/html/search/all_12.js +574 -570
  389. package/SVF-doxygen/html/search/all_13.js +208 -207
  390. package/SVF-doxygen/html/search/all_14.js +73 -70
  391. package/SVF-doxygen/html/search/all_15.js +176 -176
  392. package/SVF-doxygen/html/search/all_16.js +77 -77
  393. package/SVF-doxygen/html/search/all_17.js +1 -1
  394. package/SVF-doxygen/html/search/all_18.js +1 -1
  395. package/SVF-doxygen/html/search/all_19.js +27 -26
  396. package/SVF-doxygen/html/search/all_1a.js +179 -179
  397. package/SVF-doxygen/html/search/all_2.js +182 -181
  398. package/SVF-doxygen/html/search/all_3.js +642 -640
  399. package/SVF-doxygen/html/search/all_4.js +236 -236
  400. package/SVF-doxygen/html/search/all_5.js +126 -126
  401. package/SVF-doxygen/html/search/all_6.js +235 -232
  402. package/SVF-doxygen/html/search/all_7.js +1056 -1047
  403. package/SVF-doxygen/html/search/all_8.js +215 -215
  404. package/SVF-doxygen/html/search/all_9.js +632 -629
  405. package/SVF-doxygen/html/search/all_a.js +46 -46
  406. package/SVF-doxygen/html/search/all_b.js +26 -26
  407. package/SVF-doxygen/html/search/all_c.js +115 -115
  408. package/SVF-doxygen/html/search/all_d.js +204 -204
  409. package/SVF-doxygen/html/search/all_e.js +209 -209
  410. package/SVF-doxygen/html/search/all_f.js +122 -122
  411. package/SVF-doxygen/html/search/classes_0.js +28 -28
  412. package/SVF-doxygen/html/search/classes_1.js +11 -11
  413. package/SVF-doxygen/html/search/classes_10.js +74 -74
  414. package/SVF-doxygen/html/search/classes_11.js +14 -14
  415. package/SVF-doxygen/html/search/classes_12.js +2 -2
  416. package/SVF-doxygen/html/search/classes_13.js +10 -10
  417. package/SVF-doxygen/html/search/classes_14.js +19 -19
  418. package/SVF-doxygen/html/search/classes_15.js +1 -1
  419. package/SVF-doxygen/html/search/classes_2.js +73 -73
  420. package/SVF-doxygen/html/search/classes_3.js +35 -35
  421. package/SVF-doxygen/html/search/classes_4.js +8 -8
  422. package/SVF-doxygen/html/search/classes_5.js +28 -28
  423. package/SVF-doxygen/html/search/classes_6.js +98 -98
  424. package/SVF-doxygen/html/search/classes_7.js +38 -38
  425. package/SVF-doxygen/html/search/classes_8.js +59 -59
  426. package/SVF-doxygen/html/search/classes_9.js +1 -1
  427. package/SVF-doxygen/html/search/classes_a.js +12 -12
  428. package/SVF-doxygen/html/search/classes_b.js +29 -29
  429. package/SVF-doxygen/html/search/classes_c.js +6 -6
  430. package/SVF-doxygen/html/search/classes_d.js +19 -19
  431. package/SVF-doxygen/html/search/classes_e.js +36 -36
  432. package/SVF-doxygen/html/search/classes_f.js +25 -25
  433. package/SVF-doxygen/html/search/defines_0.js +3 -3
  434. package/SVF-doxygen/html/search/defines_1.js +3 -3
  435. package/SVF-doxygen/html/search/defines_10.js +2 -2
  436. package/SVF-doxygen/html/search/defines_2.js +30 -30
  437. package/SVF-doxygen/html/search/defines_3.js +20 -20
  438. package/SVF-doxygen/html/search/defines_4.js +3 -3
  439. package/SVF-doxygen/html/search/defines_5.js +4 -4
  440. package/SVF-doxygen/html/search/defines_6.js +2 -2
  441. package/SVF-doxygen/html/search/defines_7.js +5 -5
  442. package/SVF-doxygen/html/search/defines_8.js +11 -11
  443. package/SVF-doxygen/html/search/defines_9.js +9 -9
  444. package/SVF-doxygen/html/search/defines_a.js +2 -2
  445. package/SVF-doxygen/html/search/defines_b.js +1 -1
  446. package/SVF-doxygen/html/search/defines_c.js +4 -4
  447. package/SVF-doxygen/html/search/defines_d.js +2 -2
  448. package/SVF-doxygen/html/search/defines_e.js +8 -8
  449. package/SVF-doxygen/html/search/defines_f.js +4 -4
  450. package/SVF-doxygen/html/search/enums_0.js +4 -4
  451. package/SVF-doxygen/html/search/enums_1.js +2 -2
  452. package/SVF-doxygen/html/search/enums_10.js +1 -1
  453. package/SVF-doxygen/html/search/enums_11.js +1 -1
  454. package/SVF-doxygen/html/search/enums_2.js +9 -8
  455. package/SVF-doxygen/html/search/enums_3.js +1 -1
  456. package/SVF-doxygen/html/search/enums_4.js +4 -4
  457. package/SVF-doxygen/html/search/enums_5.js +1 -1
  458. package/SVF-doxygen/html/search/enums_6.js +2 -2
  459. package/SVF-doxygen/html/search/enums_7.js +2 -2
  460. package/SVF-doxygen/html/search/enums_8.js +4 -4
  461. package/SVF-doxygen/html/search/enums_9.js +1 -1
  462. package/SVF-doxygen/html/search/enums_a.js +1 -1
  463. package/SVF-doxygen/html/search/enums_b.js +7 -7
  464. package/SVF-doxygen/html/search/enums_c.js +1 -1
  465. package/SVF-doxygen/html/search/enums_d.js +4 -4
  466. package/SVF-doxygen/html/search/enums_e.js +2 -2
  467. package/SVF-doxygen/html/search/enums_f.js +4 -4
  468. package/SVF-doxygen/html/search/enumvalues_0.js +15 -15
  469. package/SVF-doxygen/html/search/enumvalues_1.js +16 -15
  470. package/SVF-doxygen/html/search/enumvalues_10.js +36 -35
  471. package/SVF-doxygen/html/search/enumvalues_11.js +5 -4
  472. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  473. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  474. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  475. package/SVF-doxygen/html/search/enumvalues_15.js +4 -3
  476. package/SVF-doxygen/html/search/enumvalues_2.js +37 -36
  477. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  478. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  479. package/SVF-doxygen/html/search/enumvalues_5.js +50 -47
  480. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  481. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  482. package/SVF-doxygen/html/search/enumvalues_8.js +24 -23
  483. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  484. package/SVF-doxygen/html/search/enumvalues_a.js +17 -17
  485. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  486. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  487. package/SVF-doxygen/html/search/enumvalues_d.js +19 -18
  488. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  489. package/SVF-doxygen/html/search/enumvalues_f.js +49 -47
  490. package/SVF-doxygen/html/search/files_0.js +16 -16
  491. package/SVF-doxygen/html/search/files_1.js +9 -9
  492. package/SVF-doxygen/html/search/files_10.js +8 -8
  493. package/SVF-doxygen/html/search/files_11.js +8 -8
  494. package/SVF-doxygen/html/search/files_12.js +2 -2
  495. package/SVF-doxygen/html/search/files_2.js +53 -53
  496. package/SVF-doxygen/html/search/files_3.js +14 -14
  497. package/SVF-doxygen/html/search/files_4.js +5 -5
  498. package/SVF-doxygen/html/search/files_5.js +13 -13
  499. package/SVF-doxygen/html/search/files_6.js +10 -10
  500. package/SVF-doxygen/html/search/files_7.js +17 -17
  501. package/SVF-doxygen/html/search/files_8.js +13 -13
  502. package/SVF-doxygen/html/search/files_9.js +18 -18
  503. package/SVF-doxygen/html/search/files_a.js +3 -3
  504. package/SVF-doxygen/html/search/files_b.js +4 -4
  505. package/SVF-doxygen/html/search/files_c.js +20 -20
  506. package/SVF-doxygen/html/search/files_d.js +4 -4
  507. package/SVF-doxygen/html/search/files_e.js +62 -62
  508. package/SVF-doxygen/html/search/files_f.js +8 -8
  509. package/SVF-doxygen/html/search/functions_0.js +13 -13
  510. package/SVF-doxygen/html/search/functions_1.js +368 -368
  511. package/SVF-doxygen/html/search/functions_10.js +140 -140
  512. package/SVF-doxygen/html/search/functions_11.js +140 -140
  513. package/SVF-doxygen/html/search/functions_12.js +299 -299
  514. package/SVF-doxygen/html/search/functions_13.js +73 -73
  515. package/SVF-doxygen/html/search/functions_14.js +41 -41
  516. package/SVF-doxygen/html/search/functions_15.js +72 -72
  517. package/SVF-doxygen/html/search/functions_16.js +38 -38
  518. package/SVF-doxygen/html/search/functions_17.js +3 -3
  519. package/SVF-doxygen/html/search/functions_18.js +179 -179
  520. package/SVF-doxygen/html/search/functions_2.js +94 -94
  521. package/SVF-doxygen/html/search/functions_3.js +261 -261
  522. package/SVF-doxygen/html/search/functions_4.js +85 -85
  523. package/SVF-doxygen/html/search/functions_5.js +57 -57
  524. package/SVF-doxygen/html/search/functions_6.js +65 -65
  525. package/SVF-doxygen/html/search/functions_7.js +872 -863
  526. package/SVF-doxygen/html/search/functions_8.js +162 -162
  527. package/SVF-doxygen/html/search/functions_9.js +440 -438
  528. package/SVF-doxygen/html/search/functions_a.js +30 -30
  529. package/SVF-doxygen/html/search/functions_b.js +2 -2
  530. package/SVF-doxygen/html/search/functions_c.js +25 -25
  531. package/SVF-doxygen/html/search/functions_d.js +82 -82
  532. package/SVF-doxygen/html/search/functions_e.js +36 -36
  533. package/SVF-doxygen/html/search/functions_f.js +58 -58
  534. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  535. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  536. package/SVF-doxygen/html/search/related_0.js +4 -4
  537. package/SVF-doxygen/html/search/related_1.js +2 -2
  538. package/SVF-doxygen/html/search/related_2.js +2 -2
  539. package/SVF-doxygen/html/search/related_3.js +2 -2
  540. package/SVF-doxygen/html/search/related_4.js +2 -2
  541. package/SVF-doxygen/html/search/related_5.js +1 -1
  542. package/SVF-doxygen/html/search/related_6.js +2 -2
  543. package/SVF-doxygen/html/search/related_7.js +5 -5
  544. package/SVF-doxygen/html/search/related_8.js +2 -2
  545. package/SVF-doxygen/html/search/related_9.js +4 -4
  546. package/SVF-doxygen/html/search/related_a.js +19 -19
  547. package/SVF-doxygen/html/search/related_b.js +4 -4
  548. package/SVF-doxygen/html/search/related_c.js +2 -2
  549. package/SVF-doxygen/html/search/related_d.js +12 -12
  550. package/SVF-doxygen/html/search/related_e.js +2 -2
  551. package/SVF-doxygen/html/search/related_f.js +2 -2
  552. package/SVF-doxygen/html/search/typedefs_0.js +19 -19
  553. package/SVF-doxygen/html/search/typedefs_1.js +27 -27
  554. package/SVF-doxygen/html/search/typedefs_10.js +65 -63
  555. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  556. package/SVF-doxygen/html/search/typedefs_12.js +13 -11
  557. package/SVF-doxygen/html/search/typedefs_13.js +40 -40
  558. package/SVF-doxygen/html/search/typedefs_14.js +11 -11
  559. package/SVF-doxygen/html/search/typedefs_2.js +125 -125
  560. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  561. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  562. package/SVF-doxygen/html/search/typedefs_5.js +42 -42
  563. package/SVF-doxygen/html/search/typedefs_6.js +54 -54
  564. package/SVF-doxygen/html/search/typedefs_7.js +47 -47
  565. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  566. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  567. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  568. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  569. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  570. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  571. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  572. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  573. package/SVF-doxygen/html/search/variables_0.js +177 -177
  574. package/SVF-doxygen/html/search/variables_1.js +77 -76
  575. package/SVF-doxygen/html/search/variables_10.js +98 -98
  576. package/SVF-doxygen/html/search/variables_11.js +46 -46
  577. package/SVF-doxygen/html/search/variables_12.js +93 -93
  578. package/SVF-doxygen/html/search/variables_13.js +76 -76
  579. package/SVF-doxygen/html/search/variables_14.js +14 -14
  580. package/SVF-doxygen/html/search/variables_15.js +49 -49
  581. package/SVF-doxygen/html/search/variables_16.js +11 -11
  582. package/SVF-doxygen/html/search/variables_17.js +1 -1
  583. package/SVF-doxygen/html/search/variables_18.js +17 -17
  584. package/SVF-doxygen/html/search/variables_2.js +40 -40
  585. package/SVF-doxygen/html/search/variables_3.js +143 -142
  586. package/SVF-doxygen/html/search/variables_4.js +51 -51
  587. package/SVF-doxygen/html/search/variables_5.js +39 -39
  588. package/SVF-doxygen/html/search/variables_6.js +66 -66
  589. package/SVF-doxygen/html/search/variables_7.js +34 -34
  590. package/SVF-doxygen/html/search/variables_8.js +8 -8
  591. package/SVF-doxygen/html/search/variables_9.js +79 -79
  592. package/SVF-doxygen/html/search/variables_a.js +4 -4
  593. package/SVF-doxygen/html/search/variables_b.js +10 -10
  594. package/SVF-doxygen/html/search/variables_c.js +45 -45
  595. package/SVF-doxygen/html/search/variables_d.js +57 -57
  596. package/SVF-doxygen/html/search/variables_e.js +123 -123
  597. package/SVF-doxygen/html/search/variables_f.js +31 -31
  598. package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  599. package/SVF-doxygen/html/structSVF_1_1Hash.html +6 -6
  600. package/SVF-doxygen/html/structSVF_1_1Hash_3_01std_1_1pair_3_01S_00_01T_01_4_01_4.html +12 -12
  601. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1AccessPath_01_4.html +1 -1
  602. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1BoundedZ3Expr_01_4.html +6 -6
  603. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +1 -1
  604. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1CxtDPItem_01_4.html +1 -1
  605. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1CxtStmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  606. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html +5 -5
  607. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SingleAbsValue_01_4.html +1 -1
  608. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +1 -1
  609. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1StmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  610. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SymState_01_4.html +1 -1
  611. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1Z3Expr_01_4.html +6 -6
  612. package/SVF-doxygen/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +1 -1
  613. package/SVF-doxygen/html/svf-ex_8cpp.html +21 -21
  614. package/SVF-doxygen/html/svf-ex_8cpp_source.html +21 -21
  615. package/SVF-doxygen/html/svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html +2 -2
  616. package/SVF-doxygen/html/svf_2include_2MTA_2MTAResultValidator_8h_source.html +3 -3
  617. package/package.json +1 -1
  618. package/svf/include/AE/Core/BoundedZ3Expr.h +33 -20
  619. package/svf/include/AE/Core/IntervalValue.h +57 -5
  620. package/svf/include/AE/Core/NumericLiteral.h +31 -1
  621. package/svf/include/AE/Core/RelationSolver.h +1 -1
  622. package/svf/include/AE/Svfexe/SVFIR2ItvExeState.h +10 -0
  623. package/svf/include/SVFIR/SVFIR.h +2 -1
  624. package/svf/include/SVFIR/SVFStatements.h +12 -2
  625. package/svf/include/Util/GeneralType.h +4 -0
  626. package/svf/include/Util/Options.h +3 -0
  627. package/svf/include/Util/Z3Expr.h +9 -2
  628. package/svf/lib/AE/Core/RelationSolver.cpp +11 -6
  629. package/svf/lib/AE/Svfexe/AbstractExecution.cpp +13 -34
  630. package/svf/lib/AE/Svfexe/BufOverflowChecker.cpp +6 -6
  631. package/svf/lib/AE/Svfexe/SVFIR2ItvExeState.cpp +217 -23
  632. package/svf/lib/SVFIR/PAGBuilderFromFile.cpp +62 -3
  633. package/svf/lib/SVFIR/SVFFileSystem.cpp +4 -1
  634. package/svf/lib/SVFIR/SVFIR.cpp +3 -3
  635. package/svf/lib/Util/Options.cpp +8 -0
  636. package/svf-llvm/include/SVF-LLVM/SVFIRBuilder.h +39 -3
  637. package/svf-llvm/lib/LLVMModule.cpp +21 -2
  638. package/svf-llvm/lib/SVFIRBuilder.cpp +7 -7
  639. package/svf-llvm/lib/SVFIRExtAPI.cpp +3 -3
@@ -119,462 +119,503 @@ $(function() {
119
119
  <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
120
120
  <div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a18b2e134e047b2dde1774b93bb5b40dd"> 51</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a18b2e134e047b2dde1774b93bb5b40dd">NumericLiteral</a>(<span class="keyword">const</span> z3::expr &amp;e) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(e) {}</div>
121
121
  <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
122
- <div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb"> 53</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb">NumericLiteral</a>(<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(i) {}</div>
122
+ <div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ade14f3444a718ad742a84cdf18819b8e"> 53</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#ade14f3444a718ad742a84cdf18819b8e">NumericLiteral</a>(<span class="keywordtype">float</span> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(<a class="code" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">getContext</a>().real_val(std::<a class="code" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">to_string</a>(i).c_str())) {}</div>
123
123
  <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
124
- <div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9"> 55</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9">NumericLiteral</a>(<a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(i) {}</div>
124
+ <div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad791e5e38d48edeaabefbbd020ec5dfc"> 55</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#ad791e5e38d48edeaabefbbd020ec5dfc">NumericLiteral</a>(<span class="keywordtype">double</span> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(<a class="code" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">getContext</a>().real_val(std::<a class="code" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">to_string</a>(i).c_str())) {}</div>
125
125
  <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
126
- <div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6"> 57</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6">NumericLiteral</a>(<a class="code" href="classSVF_1_1BoundedZ3Expr.html">BoundedZ3Expr</a> z3Expr) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(std::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(z3Expr)) {}</div>
126
+ <div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb"> 57</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb">NumericLiteral</a>(<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(i) {}</div>
127
127
  <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
128
- <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a4eb2b07a6aee71e66a16ffe690db9826">~NumericLiteral</a>() = <span class="keywordflow">default</span>;</div>
128
+ <div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9"> 59</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9">NumericLiteral</a>(<a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> i) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(i) {}</div>
129
129
  <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
130
- <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a68e409232bf4bf0bbd688e36e8f526ee">NumericLiteral</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;) = <span class="keywordflow">default</span>;</div>
131
- <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
132
- <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a68e409232bf4bf0bbd688e36e8f526ee">NumericLiteral</a>(<a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
133
- <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
134
- <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#ad58b37aff4db180c548cde777b19ed6a">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;) = <span class="keywordflow">default</span>;</div>
135
- <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
136
- <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#ad58b37aff4db180c548cde777b19ed6a">operator=</a>(<a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
137
- <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
138
- <div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d"> 73</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>()</div>
139
- <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div>
140
- <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#a9ab647fded972e0d0ed346bc94d0a73c">BoundedZ3Expr::plus_infinity</a>();</div>
141
- <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div>
142
- <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
143
- <div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c"> 78</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>()</div>
144
- <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div>
145
- <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#a033ae449eba6157a1506f716cecc1a7b">BoundedZ3Expr::minus_infinity</a>();</div>
146
- <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div>
147
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
148
- <div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b"> 83</a></span>&#160; <span class="keyword">static</span> z3::context &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">getContext</a>()</div>
149
- <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div>
150
- <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#af40c5e287f17eace7182557f46501b29">BoundedZ3Expr::getContext</a>();</div>
151
- <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
152
- <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
153
- <div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593"> 88</a></span>&#160; <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">to_string</a>()<span class="keyword"> const</span></div>
154
- <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword"> </span>{</div>
155
- <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1Z3Expr.html#a1da8e647e12c0e105271eadbd72f437e">to_string</a>();</div>
156
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
157
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
158
- <div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15"> 94</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>()<span class="keyword"> const</span></div>
159
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword"> </span>{</div>
160
- <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a90c87bed7210246db310dbecc61326ac">is_minus_infinite</a>();</div>
161
- <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
162
- <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
163
- <div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7"> 100</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>()<span class="keyword"> const</span></div>
164
- <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keyword"> </span>{</div>
165
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a1b58a124940bbc4da8c09f2b63b24b0c">is_plus_infinite</a>();</div>
166
- <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
167
- <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
168
- <div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d"> 106</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>()<span class="keyword"> const</span></div>
169
- <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keyword"> </span>{</div>
170
- <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>() || <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
171
- <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
172
- <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
173
- <div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71"> 112</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>()<span class="keyword"> const</span></div>
174
- <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keyword"> </span>{</div>
175
- <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">is_zero</a>();</div>
176
- <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
177
- <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
178
- <div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576"> 118</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>()<span class="keyword"> const</span></div>
179
- <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keyword"> </span>{</div>
180
- <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#af62c2d6bc40080b9728c107cf317184b">getNumeral</a>();</div>
181
- <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
182
- <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
183
- <div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a"> 124</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a">equal</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
184
- <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword"> </span>{</div>
185
- <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(*<span class="keyword">this</span>, rhs);</div>
186
- <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
187
- <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
188
- <div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b"> 130</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
189
- <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keyword"> </span>{</div>
190
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
191
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; {</div>
192
- <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
193
- <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div>
194
- <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
195
- <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
196
- <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span></div>
197
- <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div>
198
- <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
199
- <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
200
- <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
201
- <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
202
- <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; {</div>
203
- <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
204
- <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
205
- <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
206
- <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">else</span></div>
207
- <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#af962942fbf3341f0679959cfd810d3a5">leq</a>(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">simplify</a>().<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">is_true</a>();</div>
208
- <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
209
- <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
210
- <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="comment">// Greater than or equal</span></div>
211
- <div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d"> 153</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
212
- <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keyword"> </span>{</div>
213
- <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
214
- <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; {</div>
215
- <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
216
- <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; {</div>
217
- <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
218
- <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
219
- <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">else</span></div>
220
- <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; {</div>
221
- <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
222
- <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; }</div>
223
- <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div>
224
- <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
225
- <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; {</div>
226
- <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
227
- <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
228
- <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
229
- <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">else</span></div>
230
- <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#acce45e2300e0c1871efec36e727ed77d">geq</a>(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">simplify</a>().<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">is_true</a>();</div>
231
- <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
232
- <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; </div>
233
- <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
234
- <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">//{%</span></div>
235
- <div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed"> 178</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
236
- <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; {</div>
237
- <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? 1 : 0;</div>
238
- <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div>
239
- <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; </div>
240
- <div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83"> 183</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
241
- <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; {</div>
242
- <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">return</span> !<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? 1 : 0;</div>
243
- <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
244
- <div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
245
- <div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54"> 188</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54">operator&gt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
246
- <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; {</div>
247
- <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs)) ? 1 : 0;</div>
248
- <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
249
- <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; </div>
250
- <div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d"> 193</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d">operator&lt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
251
- <div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div>
252
- <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(rhs)) ? 1 : 0;</div>
253
- <div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
254
- <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; </div>
255
- <div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07"> 198</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07">operator&lt;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
256
- <div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; {</div>
257
- <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? 1 : 0;</div>
258
- <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; }</div>
259
- <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; </div>
260
- <div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf"> 203</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf">operator&gt;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
261
- <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div>
262
- <div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(rhs) ? 1 : 0;</div>
263
- <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
264
- <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; </div>
265
- <div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84"> 208</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84">operator+</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
130
+ <div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6"> 61</a></span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6">NumericLiteral</a>(<a class="code" href="classSVF_1_1BoundedZ3Expr.html">BoundedZ3Expr</a> z3Expr) : <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>(std::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(z3Expr)) {}</div>
131
+ <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
132
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a4eb2b07a6aee71e66a16ffe690db9826">~NumericLiteral</a>() = <span class="keywordflow">default</span>;</div>
133
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
134
+ <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a68e409232bf4bf0bbd688e36e8f526ee">NumericLiteral</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;) = <span class="keywordflow">default</span>;</div>
135
+ <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
136
+ <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html#a68e409232bf4bf0bbd688e36e8f526ee">NumericLiteral</a>(<a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
137
+ <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
138
+ <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#ad58b37aff4db180c548cde777b19ed6a">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;) = <span class="keywordflow">default</span>;</div>
139
+ <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
140
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#ad58b37aff4db180c548cde777b19ed6a">operator=</a>(<a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
141
+ <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
142
+ <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d"> 77</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>()</div>
143
+ <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div>
144
+ <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#a9ab647fded972e0d0ed346bc94d0a73c">BoundedZ3Expr::plus_infinity</a>();</div>
145
+ <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
146
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
147
+ <div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c"> 82</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>()</div>
148
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; {</div>
149
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#a033ae449eba6157a1506f716cecc1a7b">BoundedZ3Expr::minus_infinity</a>();</div>
150
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
151
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
152
+ <div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b"> 87</a></span>&#160; <span class="keyword">static</span> z3::context &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">getContext</a>()</div>
153
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div>
154
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BoundedZ3Expr.html#af40c5e287f17eace7182557f46501b29">BoundedZ3Expr::getContext</a>();</div>
155
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
156
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
157
+ <div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593"> 92</a></span>&#160; <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">to_string</a>()<span class="keyword"> const</span></div>
158
+ <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keyword"> </span>{</div>
159
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1Z3Expr.html#a1da8e647e12c0e105271eadbd72f437e">to_string</a>();</div>
160
+ <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
161
+ <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; </div>
162
+ <div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15"> 98</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>()<span class="keyword"> const</span></div>
163
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keyword"> </span>{</div>
164
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a90c87bed7210246db310dbecc61326ac">is_minus_infinite</a>();</div>
165
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
166
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; </div>
167
+ <div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7"> 104</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>()<span class="keyword"> const</span></div>
168
+ <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword"> </span>{</div>
169
+ <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a1b58a124940bbc4da8c09f2b63b24b0c">is_plus_infinite</a>();</div>
170
+ <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div>
171
+ <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
172
+ <div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d"> 110</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>()<span class="keyword"> const</span></div>
173
+ <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keyword"> </span>{</div>
174
+ <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>() || <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
175
+ <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
176
+ <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; </div>
177
+ <div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71"> 116</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>()<span class="keyword"> const</span></div>
178
+ <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="keyword"> </span>{</div>
179
+ <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">is_zero</a>();</div>
180
+ <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
181
+ <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; </div>
182
+ <div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a75fc2abc930b9405130106a51c29f314"> 121</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a75fc2abc930b9405130106a51c29f314">is_int</a>()<span class="keyword"> const</span></div>
183
+ <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keyword"> </span>{</div>
184
+ <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a58d8ae08daa2fca500f71dee768f8306">is_int</a>();</div>
185
+ <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
186
+ <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; </div>
187
+ <div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a2fe2eb429c125e33014bab7e21c77b9e"> 126</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a2fe2eb429c125e33014bab7e21c77b9e">is_real</a>()<span class="keyword"> const</span></div>
188
+ <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keyword"> </span>{</div>
189
+ <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a20cc4c32610c776082cb7910488f4c42">is_real</a>();</div>
190
+ <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
191
+ <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
192
+ <div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576"> 132</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>()<span class="keyword"> const</span></div>
193
+ <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keyword"> </span>{</div>
194
+ <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#af62c2d6bc40080b9728c107cf317184b">getNumeral</a>();</div>
195
+ <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
196
+ <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
197
+ <div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ac2994e13c3572b114c57a9bb4f155d67"> 138</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1Z3Expr.html">Z3Expr</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ac2994e13c3572b114c57a9bb4f155d67">getExpr</a>()<span class="keyword"> const</span></div>
198
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword"> </span>{</div>
199
+ <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1Z3Expr.html#a57c199ba2c3c6a6d44a86e0b1429be55">getExpr</a>();</div>
200
+ <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
201
+ <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
202
+ <div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aa69f9536301d6529eb1d0caaec2fcc63"> 143</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1NumericLiteral.html#aa69f9536301d6529eb1d0caaec2fcc63">getRealNumeral</a>()<span class="keyword"> const</span></div>
203
+ <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="keyword"> </span>{</div>
204
+ <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#aa9305d8e1b9ba3201522704f39295d90">getRealNumeral</a>();</div>
205
+ <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div>
206
+ <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
207
+ <div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a8e19113913c2aa236ab35d3bdd49541c"> 148</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a8e19113913c2aa236ab35d3bdd49541c">getIntNumeral</a>()<span class="keyword"> const</span></div>
208
+ <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="keyword"> </span>{</div>
209
+ <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a38f6609bbf9faf010ee5b3c317db5506">getIntNumeral</a>();</div>
210
+ <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div>
211
+ <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
212
+ <div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a"> 154</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a">equal</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
213
+ <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="keyword"> </span>{</div>
214
+ <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(*<span class="keyword">this</span>, rhs);</div>
215
+ <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
216
+ <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
217
+ <div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b"> 160</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
218
+ <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="keyword"> </span>{</div>
219
+ <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
220
+ <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; {</div>
221
+ <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
222
+ <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; {</div>
223
+ <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
224
+ <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
225
+ <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">else</span></div>
226
+ <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; {</div>
227
+ <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
228
+ <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
229
+ <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
230
+ <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
231
+ <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; {</div>
232
+ <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
233
+ <div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
234
+ <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
235
+ <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">else</span></div>
236
+ <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#af962942fbf3341f0679959cfd810d3a5">leq</a>(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">simplify</a>().<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">is_true</a>();</div>
237
+ <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
238
+ <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; </div>
239
+ <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="comment">// Greater than or equal</span></div>
240
+ <div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d"> 183</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)<span class="keyword"> const</span></div>
241
+ <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="keyword"> </span>{</div>
242
+ <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
243
+ <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div>
244
+ <div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
245
+ <div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; {</div>
246
+ <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>();</div>
247
+ <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div>
248
+ <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">else</span></div>
249
+ <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; {</div>
250
+ <div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
251
+ <div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div>
252
+ <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div>
253
+ <div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
254
+ <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; {</div>
255
+ <div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
256
+ <div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">return</span> rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>();</div>
257
+ <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div>
258
+ <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">else</span></div>
259
+ <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#acce45e2300e0c1871efec36e727ed77d">geq</a>(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">simplify</a>().<a class="code" href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">is_true</a>();</div>
260
+ <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
261
+ <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; </div>
262
+ <div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; </div>
263
+ <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="comment">//{%</span></div>
264
+ <div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed"> 208</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
266
265
  <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; {</div>
267
- <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
268
- <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> + rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
269
- <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
270
- <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> rhs;</div>
271
- <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
272
- <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> lhs;</div>
273
- <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs))</div>
274
- <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">return</span> lhs;</div>
275
- <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">else</span></div>
276
- <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; {</div>
277
- <div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;undefined operation +oo + -oo&quot;</span>);</div>
278
- <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; abort();</div>
279
- <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
280
- <div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; }</div>
281
- <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; </div>
282
- <div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d"> 225</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d">operator-</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
283
- <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; {</div>
284
- <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
285
- <div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> - rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
286
- <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
287
- <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> -rhs;</div>
288
- <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
289
- <div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> lhs;</div>
290
- <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs))</div>
291
- <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">return</span> lhs;</div>
292
- <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">else</span></div>
293
- <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div>
294
- <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;undefined operation +oo - +oo&quot;</span>);</div>
295
- <div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; abort();</div>
296
- <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div>
297
- <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div>
298
- <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
299
- <div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf"> 242</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf">operator*</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
300
- <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; {</div>
301
- <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>() || rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
302
- <div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> 0;</div>
303
- <div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
304
- <div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
305
- <div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
306
- <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
307
- <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
308
- <div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> !lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? rhs : -rhs;</div>
309
- <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">else</span></div>
310
- <div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> * rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
311
- <div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; }</div>
312
- <div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; </div>
313
- <div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407"> 256</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407">operator/</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
314
- <div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div>
315
- <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
316
- <div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; {</div>
317
- <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; </div>
318
- <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;divide by zero&quot;</span>);</div>
319
- <div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; abort();</div>
320
- <div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div>
321
- <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
322
- <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> / rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
323
- <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
324
- <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> 0;</div>
325
- <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
326
- <div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
327
- <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">else</span></div>
328
- <div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="comment">// TODO: +oo/-oo L&#39;Hôpital&#39;s rule?</span></div>
329
- <div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
330
- <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div>
331
- <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; </div>
332
- <div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39"> 275</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39">operator%</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
333
- <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; {</div>
334
- <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
335
- <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; {</div>
336
- <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;divide by zero&quot;</span>);</div>
337
- <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; abort();</div>
338
- <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div>
339
- <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
340
- <div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> % rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
341
- <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
342
- <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">return</span> 0;</div>
343
- <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// TODO: not sure</span></div>
344
- <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
345
- <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
346
- <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">else</span></div>
347
- <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">// TODO: +oo/-oo L&#39;Hôpital&#39;s rule?</span></div>
348
- <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
349
- <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div>
350
- <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; </div>
351
- <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="comment">// TODO: logic operation for infinity?</span></div>
352
- <div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604"> 295</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604">operator^</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
353
- <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; {</div>
354
- <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
355
- <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div>
356
- <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; </div>
357
- <div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da"> 300</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da">operator&amp;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
358
- <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; {</div>
359
- <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> &amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
266
+ <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? 1 : 0;</div>
267
+ <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div>
268
+ <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; </div>
269
+ <div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83"> 213</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
270
+ <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; {</div>
271
+ <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> !<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? 1 : 0;</div>
272
+ <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</div>
273
+ <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; </div>
274
+ <div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54"> 218</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54">operator&gt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
275
+ <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; {</div>
276
+ <div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs)) ? 1 : 0;</div>
277
+ <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
278
+ <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; </div>
279
+ <div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d"> 223</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d">operator&lt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
280
+ <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; {</div>
281
+ <div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(rhs)) ? 1 : 0;</div>
282
+ <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
283
+ <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; </div>
284
+ <div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07"> 228</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07">operator&lt;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
285
+ <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; {</div>
286
+ <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? 1 : 0;</div>
287
+ <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
288
+ <div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; </div>
289
+ <div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf"> 233</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf">operator&gt;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
290
+ <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; {</div>
291
+ <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(rhs) ? 1 : 0;</div>
292
+ <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; }</div>
293
+ <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
294
+ <div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84"> 238</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84">operator+</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
295
+ <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; {</div>
296
+ <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
297
+ <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> + rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
298
+ <div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
299
+ <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">return</span> rhs;</div>
300
+ <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
301
+ <div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> lhs;</div>
302
+ <div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs))</div>
303
+ <div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> lhs;</div>
304
+ <div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">else</span></div>
305
+ <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; {</div>
306
+ <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;undefined operation +oo + -oo&quot;</span>);</div>
307
+ <div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; abort();</div>
308
+ <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
309
+ <div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }</div>
310
+ <div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; </div>
311
+ <div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d"> 255</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d">operator-</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
312
+ <div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; {</div>
313
+ <div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
314
+ <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> - rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
315
+ <div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
316
+ <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">return</span> -rhs;</div>
317
+ <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
318
+ <div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">return</span> lhs;</div>
319
+ <div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs))</div>
320
+ <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span> lhs;</div>
321
+ <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">else</span></div>
322
+ <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; {</div>
323
+ <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;undefined operation +oo - +oo&quot;</span>);</div>
324
+ <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; abort();</div>
325
+ <div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; }</div>
326
+ <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; }</div>
327
+ <div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; </div>
328
+ <div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf"> 272</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf">operator*</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
329
+ <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; {</div>
330
+ <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>() || rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
331
+ <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> 0;</div>
332
+ <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
333
+ <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
334
+ <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
335
+ <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
336
+ <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
337
+ <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> !lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? rhs : -rhs;</div>
338
+ <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">else</span></div>
339
+ <div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> * rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
340
+ <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; }</div>
341
+ <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; </div>
342
+ <div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407"> 286</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407">operator/</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
343
+ <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; {</div>
344
+ <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
345
+ <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div>
346
+ <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; </div>
347
+ <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;divide by zero&quot;</span>);</div>
348
+ <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; abort();</div>
349
+ <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; }</div>
350
+ <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
351
+ <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> / rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
352
+ <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
353
+ <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">return</span> 0;</div>
354
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
355
+ <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
356
+ <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">else</span></div>
357
+ <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="comment">// TODO: +oo/-oo L&#39;Hôpital&#39;s rule?</span></div>
358
+ <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
360
359
  <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div>
361
360
  <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; </div>
362
- <div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05"> 305</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05">operator|</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
361
+ <div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39"> 305</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39">operator%</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
363
362
  <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; {</div>
364
- <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> | rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
365
- <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div>
366
- <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; </div>
367
- <div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516"> 310</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516">operator&gt;&gt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
368
- <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; {</div>
369
- <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; assert(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) &amp;&amp; <span class="stringliteral">&quot;rhs should be greater or equal than 0&quot;</span>);</div>
370
- <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
371
- <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> lhs;</div>
372
- <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
373
- <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> lhs;</div>
374
- <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
375
- <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) ? 0 : -1;</div>
363
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
364
+ <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div>
365
+ <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;divide by zero&quot;</span>);</div>
366
+ <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; abort();</div>
367
+ <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }</div>
368
+ <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
369
+ <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> % rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
370
+ <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
371
+ <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> 0;</div>
372
+ <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="comment">// TODO: not sure</span></div>
373
+ <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>() &amp;&amp; !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
374
+ <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> !rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? lhs : -lhs;</div>
376
375
  <div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">else</span></div>
377
- <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>() &gt;&gt; (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>();</div>
378
- <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; }</div>
379
- <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; </div>
380
- <div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d"> 323</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d">operator&lt;&lt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
381
- <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; {</div>
382
- <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; assert(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) &amp;&amp; <span class="stringliteral">&quot;rhs should be greater or equal than 0&quot;</span>);</div>
383
- <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
384
- <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> lhs;</div>
385
- <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
386
- <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> lhs;</div>
387
- <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
388
- <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
389
- <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">else</span></div>
390
- <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>() &lt;&lt; (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>();</div>
391
- <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; }</div>
392
- <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; </div>
393
- <div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67"> 336</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67">operator&amp;&amp;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
394
- <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; {</div>
395
- <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
396
- <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; }</div>
397
- <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; </div>
398
- <div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8"> 341</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8">operator||</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
399
- <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; {</div>
400
- <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> || rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
401
- <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; }</div>
402
- <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; </div>
403
- <div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29"> 346</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29">operator!</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
404
- <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; {</div>
405
- <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
406
- <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div>
407
- <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; </div>
408
- <div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3"> 351</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3">operator-</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
409
- <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; {</div>
410
- <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>())</div>
411
- <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; {</div>
412
- <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
413
- <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; }</div>
414
- <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>())</div>
415
- <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; {</div>
416
- <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>();</div>
417
- <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; }</div>
418
- <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">else</span></div>
419
- <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> (-lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
420
- <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div>
421
- <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; </div>
422
- <div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a"> 366</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">ite</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;cond, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
376
+ <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="comment">// TODO: +oo/-oo L&#39;Hôpital&#39;s rule?</span></div>
377
+ <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs, rhs) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
378
+ <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; }</div>
379
+ <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; </div>
380
+ <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="comment">// TODO: logic operation for infinity?</span></div>
381
+ <div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604"> 325</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604">operator^</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
382
+ <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; {</div>
383
+ <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> ^ rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
384
+ <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
385
+ <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; </div>
386
+ <div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da"> 330</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da">operator&amp;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
387
+ <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; {</div>
388
+ <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> &amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
389
+ <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; }</div>
390
+ <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
391
+ <div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05"> 335</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05">operator|</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
392
+ <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; {</div>
393
+ <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> | rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
394
+ <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; }</div>
395
+ <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; </div>
396
+ <div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516"> 340</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516">operator&gt;&gt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
397
+ <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; {</div>
398
+ <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; assert(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) &amp;&amp; <span class="stringliteral">&quot;rhs should be greater or equal than 0&quot;</span>);</div>
399
+ <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
400
+ <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> lhs;</div>
401
+ <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
402
+ <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> lhs;</div>
403
+ <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
404
+ <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) ? 0 : -1;</div>
405
+ <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">else</span></div>
406
+ <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>() &gt;&gt; (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>();</div>
407
+ <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; }</div>
408
+ <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; </div>
409
+ <div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d"> 353</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d">operator&lt;&lt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
410
+ <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; {</div>
411
+ <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; assert(rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) &amp;&amp; <span class="stringliteral">&quot;rhs should be greater or equal than 0&quot;</span>);</div>
412
+ <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">is_zero</a>())</div>
413
+ <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">return</span> lhs;</div>
414
+ <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
415
+ <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> lhs;</div>
416
+ <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">is_infinity</a>())</div>
417
+ <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">geq</a>(0) ? <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>() : <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
418
+ <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">else</span></div>
419
+ <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>() &lt;&lt; (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">getNumeral</a>();</div>
420
+ <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div>
421
+ <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; </div>
422
+ <div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67"> 366</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67">operator&amp;&amp;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
423
423
  <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; {</div>
424
- <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">ite</a>(cond.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
424
+ <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> &amp;&amp; rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
425
425
  <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; }</div>
426
426
  <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
427
- <div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792"> 371</a></span>&#160; <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792">operator&lt;&lt;</a>(std::ostream &amp;out, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;expr)</div>
427
+ <div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8"> 371</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8">operator||</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
428
428
  <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; {</div>
429
- <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (expr.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>())</div>
430
- <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;+INF&quot;</span>;</div>
431
- <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (expr.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>())</div>
432
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;-INF&quot;</span>;</div>
433
- <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">else</span></div>
434
- <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; out &lt;&lt; expr.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>;</div>
435
- <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">return</span> out;</div>
436
- <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div>
437
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; </div>
438
- <div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed"> 382</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
439
- <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; {</div>
440
- <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>);</div>
441
- <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div>
442
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; </div>
443
- <div class="line"><a name="l00387"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97"> 387</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97">min</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
444
- <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div>
445
- <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? lhs : rhs;</div>
446
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div>
447
- <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; </div>
448
- <div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec"> 392</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec">max</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
449
- <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; {</div>
450
- <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? rhs : lhs;</div>
451
- <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; }</div>
452
- <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; </div>
453
- <div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c"> 397</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c">abs</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
454
- <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; {</div>
455
- <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? -lhs : lhs;</div>
456
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div>
457
- <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; </div>
458
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="comment">// TODO: how to use initializer_list as argument?</span></div>
459
- <div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3"> 403</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3">min</a>(std::vector&lt;NumericLiteral&gt;&amp; _l)</div>
460
- <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; {</div>
461
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> ret(<a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>());</div>
462
- <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;it: _l)</div>
463
- <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; {</div>
464
- <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">if</span> (it.is_minus_infinity())</div>
465
- <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
466
- <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!it.geq(ret))</div>
467
- <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; {</div>
468
- <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; ret = it;</div>
469
- <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }</div>
470
- <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; }</div>
471
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> ret;</div>
472
- <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; }</div>
473
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; </div>
474
- <div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2"> 418</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2">max</a>(std::vector&lt;NumericLiteral&gt;&amp; _l)</div>
475
- <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; {</div>
476
- <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> ret(<a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>());</div>
477
- <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;it: _l)</div>
478
- <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; {</div>
479
- <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">if</span> (it.is_plus_infinity())</div>
480
- <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>();</div>
481
- <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!it.leq(ret))</div>
482
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; {</div>
483
- <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; ret = it;</div>
484
- <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; }</div>
485
- <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; }</div>
486
- <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">return</span> ret;</div>
487
- <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div>
488
- <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; </div>
489
- <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="comment">//%}</span></div>
490
- <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; </div>
491
- <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; </div>
492
- <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;}; <span class="comment">// end class NumericLiteral</span></div>
493
- <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;} <span class="comment">// end namespace SVF</span></div>
494
- <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; </div>
495
- <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;<span class="keyword">template</span>&lt;&gt;</div>
496
- <div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html"> 441</a></span>&#160;<span class="keyword">struct </span>std::hash&lt;<a class="code" href="namespaceSVF.html">SVF</a>::NumericLiteral&gt;</div>
497
- <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;{</div>
498
- <div class="line"><a name="l00443"></a><span class="lineno"><a class="line" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5"> 443</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5">operator()</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">SVF::NumericLiteral</a> &amp;<a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div>
499
- <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="keyword"> </span>{</div>
500
- <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>.getNumeral();</div>
429
+ <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a> || rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
430
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div>
431
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; </div>
432
+ <div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29"> 376</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29">operator!</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
433
+ <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div>
434
+ <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> (!lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
435
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; }</div>
436
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; </div>
437
+ <div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3"> 381</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3">operator-</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
438
+ <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; {</div>
439
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>())</div>
440
+ <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div>
441
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
442
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div>
443
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>())</div>
444
+ <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div>
445
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>();</div>
446
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div>
447
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">else</span></div>
448
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">return</span> (-lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
449
+ <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div>
450
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; </div>
451
+ <div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a"> 396</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">ite</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;cond, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
452
+ <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; {</div>
453
+ <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">ite</a>(cond.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>).simplify();</div>
454
+ <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; }</div>
455
+ <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; </div>
456
+ <div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792"> 401</a></span>&#160; <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792">operator&lt;&lt;</a>(std::ostream &amp;out, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;expr)</div>
457
+ <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div>
458
+ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (expr.<a class="code" href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">is_plus_infinity</a>())</div>
459
+ <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;+INF&quot;</span>;</div>
460
+ <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (expr.<a class="code" href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">is_minus_infinity</a>())</div>
461
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;-INF&quot;</span>;</div>
462
+ <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">else</span></div>
463
+ <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; out &lt;&lt; expr.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>;</div>
464
+ <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">return</span> out;</div>
465
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; }</div>
466
+ <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; </div>
467
+ <div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed"> 412</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
468
+ <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; {</div>
469
+ <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">eq</a>(lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>, rhs.<a class="code" href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">_n</a>);</div>
470
+ <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div>
471
+ <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; </div>
472
+ <div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97"> 417</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97">min</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
473
+ <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; {</div>
474
+ <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? lhs : rhs;</div>
475
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }</div>
476
+ <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; </div>
477
+ <div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec"> 422</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec">max</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;rhs)</div>
478
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; {</div>
479
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(rhs) ? rhs : lhs;</div>
480
+ <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div>
481
+ <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
482
+ <div class="line"><a name="l00427"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c"> 427</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c">abs</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> &amp;lhs)</div>
483
+ <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; {</div>
484
+ <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">return</span> lhs.<a class="code" href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">leq</a>(0) ? -lhs : lhs;</div>
485
+ <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; }</div>
486
+ <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; </div>
487
+ <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="comment">// TODO: how to use initializer_list as argument?</span></div>
488
+ <div class="line"><a name="l00433"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3"> 433</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3">min</a>(std::vector&lt;NumericLiteral&gt;&amp; _l)</div>
489
+ <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; {</div>
490
+ <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> ret(<a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>());</div>
491
+ <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;it: _l)</div>
492
+ <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; {</div>
493
+ <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">if</span> (it.is_minus_infinity())</div>
494
+ <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>();</div>
495
+ <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!it.geq(ret))</div>
496
+ <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; {</div>
497
+ <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; ret = it;</div>
498
+ <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div>
499
+ <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div>
500
+ <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> ret;</div>
501
501
  <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div>
502
- <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;};</div>
503
- <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="preprocessor">#endif //Z3_EXAMPLE_Number_H</span></div>
502
+ <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; </div>
503
+ <div class="line"><a name="l00448"></a><span class="lineno"><a class="line" href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2"> 448</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> <a class="code" href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2">max</a>(std::vector&lt;NumericLiteral&gt;&amp; _l)</div>
504
+ <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; {</div>
505
+ <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <a class="code" href="classSVF_1_1NumericLiteral.html">NumericLiteral</a> ret(<a class="code" href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">minus_infinity</a>());</div>
506
+ <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;it: _l)</div>
507
+ <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; {</div>
508
+ <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">if</span> (it.is_plus_infinity())</div>
509
+ <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">plus_infinity</a>();</div>
510
+ <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!it.leq(ret))</div>
511
+ <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; {</div>
512
+ <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; ret = it;</div>
513
+ <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
514
+ <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div>
515
+ <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span> ret;</div>
516
+ <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; }</div>
517
+ <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; </div>
518
+ <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="comment">//%}</span></div>
519
+ <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; </div>
520
+ <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; </div>
521
+ <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;}; <span class="comment">// end class NumericLiteral</span></div>
522
+ <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;} <span class="comment">// end namespace SVF</span></div>
523
+ <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; </div>
524
+ <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="keyword">template</span>&lt;&gt;</div>
525
+ <div class="line"><a name="l00471"></a><span class="lineno"><a class="line" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html"> 471</a></span>&#160;<span class="keyword">struct </span>std::hash&lt;<a class="code" href="namespaceSVF.html">SVF</a>::NumericLiteral&gt;</div>
526
+ <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;{</div>
527
+ <div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5"> 473</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5">operator()</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1NumericLiteral.html">SVF::NumericLiteral</a> &amp;<a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div>
528
+ <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="keyword"> </span>{</div>
529
+ <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">return</span> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>.getNumeral();</div>
530
+ <div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; }</div>
531
+ <div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;};</div>
532
+ <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="preprocessor">#endif //Z3_EXAMPLE_Number_H</span></div>
504
533
  </div><!-- fragment --></div><!-- contents -->
505
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac154ddeb6516e240e091f4867c4c3593"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">SVF::NumericLiteral::to_string</a></div><div class="ttdeci">const std::string to_string() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00088">NumericLiteral.h:88</a></div></div>
506
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad68b36d4cf69e4f627226a738d5d8a29"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29">SVF::NumericLiteral::operator!</a></div><div class="ttdeci">friend NumericLiteral operator!(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00346">NumericLiteral.h:346</a></div></div>
507
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a1b58a124940bbc4da8c09f2b63b24b0c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a1b58a124940bbc4da8c09f2b63b24b0c">SVF::BoundedZ3Expr::is_plus_infinite</a></div><div class="ttdeci">bool is_plus_infinite() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00073">BoundedZ3Expr.h:73</a></div></div>
508
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad0b83965d54dd9a94b0ec0a87ef8aa83"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83">SVF::NumericLiteral::operator!=</a></div><div class="ttdeci">friend NumericLiteral operator!=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00183">NumericLiteral.h:183</a></div></div>
509
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a82340a506f381d4dad620cfd524aeb39"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39">SVF::NumericLiteral::operator%</a></div><div class="ttdeci">friend NumericLiteral operator%(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00275">NumericLiteral.h:275</a></div></div>
510
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a7b25cbee3dc405cb9c3e16305f263407"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407">SVF::NumericLiteral::operator/</a></div><div class="ttdeci">friend NumericLiteral operator/(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00256">NumericLiteral.h:256</a></div></div>
511
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_acd6b5117399b0572133d3d94dc064acf"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf">SVF::NumericLiteral::operator*</a></div><div class="ttdeci">friend NumericLiteral operator*(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00242">NumericLiteral.h:242</a></div></div>
534
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac154ddeb6516e240e091f4867c4c3593"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac154ddeb6516e240e091f4867c4c3593">SVF::NumericLiteral::to_string</a></div><div class="ttdeci">const std::string to_string() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00092">NumericLiteral.h:92</a></div></div>
535
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad68b36d4cf69e4f627226a738d5d8a29"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad68b36d4cf69e4f627226a738d5d8a29">SVF::NumericLiteral::operator!</a></div><div class="ttdeci">friend NumericLiteral operator!(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00376">NumericLiteral.h:376</a></div></div>
536
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a1b58a124940bbc4da8c09f2b63b24b0c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a1b58a124940bbc4da8c09f2b63b24b0c">SVF::BoundedZ3Expr::is_plus_infinite</a></div><div class="ttdeci">bool is_plus_infinite() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00075">BoundedZ3Expr.h:75</a></div></div>
537
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad0b83965d54dd9a94b0ec0a87ef8aa83"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad0b83965d54dd9a94b0ec0a87ef8aa83">SVF::NumericLiteral::operator!=</a></div><div class="ttdeci">friend NumericLiteral operator!=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00213">NumericLiteral.h:213</a></div></div>
538
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a82340a506f381d4dad620cfd524aeb39"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a82340a506f381d4dad620cfd524aeb39">SVF::NumericLiteral::operator%</a></div><div class="ttdeci">friend NumericLiteral operator%(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00305">NumericLiteral.h:305</a></div></div>
539
+ <div class="ttc" id="aclassSVF_1_1Z3Expr_html_a57c199ba2c3c6a6d44a86e0b1429be55"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#a57c199ba2c3c6a6d44a86e0b1429be55">SVF::Z3Expr::getExpr</a></div><div class="ttdeci">const z3::expr &amp; getExpr() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00086">Z3Expr.h:86</a></div></div>
540
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a7b25cbee3dc405cb9c3e16305f263407"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a7b25cbee3dc405cb9c3e16305f263407">SVF::NumericLiteral::operator/</a></div><div class="ttdeci">friend NumericLiteral operator/(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00286">NumericLiteral.h:286</a></div></div>
541
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a20cc4c32610c776082cb7910488f4c42"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a20cc4c32610c776082cb7910488f4c42">SVF::BoundedZ3Expr::is_real</a></div><div class="ttdeci">bool is_real() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00355">BoundedZ3Expr.h:355</a></div></div>
542
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_acd6b5117399b0572133d3d94dc064acf"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#acd6b5117399b0572133d3d94dc064acf">SVF::NumericLiteral::operator*</a></div><div class="ttdeci">friend NumericLiteral operator*(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00272">NumericLiteral.h:272</a></div></div>
512
543
  <div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00067">BasicTypes.h:67</a></div></div>
544
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a38f6609bbf9faf010ee5b3c317db5506"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a38f6609bbf9faf010ee5b3c317db5506">SVF::BoundedZ3Expr::getIntNumeral</a></div><div class="ttdeci">s64_t getIntNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00360">BoundedZ3Expr.h:360</a></div></div>
513
545
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ae3d91383159a67b9f5e102581229560a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ae3d91383159a67b9f5e102581229560a">SVF::NumericLiteral::_n</a></div><div class="ttdeci">BoundedZ3Expr _n</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00041">NumericLiteral.h:41</a></div></div>
546
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a58d8ae08daa2fca500f71dee768f8306"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a58d8ae08daa2fca500f71dee768f8306">SVF::BoundedZ3Expr::is_int</a></div><div class="ttdeci">bool is_int() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00350">BoundedZ3Expr.h:350</a></div></div>
514
547
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a68e409232bf4bf0bbd688e36e8f526ee"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a68e409232bf4bf0bbd688e36e8f526ee">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral()=delete</div><div class="ttdoc">Default constructor.</div></div>
515
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a8d874a7b6396e8af210c4a36d3234d71"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">SVF::NumericLiteral::is_zero</a></div><div class="ttdeci">bool is_zero() const</div><div class="ttdoc">Check if this is zero.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00112">NumericLiteral.h:112</a></div></div>
516
- <div class="ttc" id="aclassSVF_1_1Z3Expr_html_a1da8e647e12c0e105271eadbd72f437e"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#a1da8e647e12c0e105271eadbd72f437e">SVF::Z3Expr::to_string</a></div><div class="ttdeci">const std::string to_string() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00115">Z3Expr.h:115</a></div></div>
548
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad791e5e38d48edeaabefbbd020ec5dfc"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad791e5e38d48edeaabefbbd020ec5dfc">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(double i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00055">NumericLiteral.h:55</a></div></div>
549
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a8d874a7b6396e8af210c4a36d3234d71"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a8d874a7b6396e8af210c4a36d3234d71">SVF::NumericLiteral::is_zero</a></div><div class="ttdeci">bool is_zero() const</div><div class="ttdoc">Check if this is zero.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00116">NumericLiteral.h:116</a></div></div>
550
+ <div class="ttc" id="aclassSVF_1_1Z3Expr_html_a1da8e647e12c0e105271eadbd72f437e"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#a1da8e647e12c0e105271eadbd72f437e">SVF::Z3Expr::to_string</a></div><div class="ttdeci">const std::string to_string() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00122">Z3Expr.h:122</a></div></div>
517
551
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a4eb2b07a6aee71e66a16ffe690db9826"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a4eb2b07a6aee71e66a16ffe690db9826">SVF::NumericLiteral::~NumericLiteral</a></div><div class="ttdeci">virtual ~NumericLiteral()=default</div></div>
518
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab0cb27a9c31ce20500babb0dff9b87bf"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf">SVF::NumericLiteral::operator&gt;=</a></div><div class="ttdeci">friend NumericLiteral operator&gt;=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00203">NumericLiteral.h:203</a></div></div>
519
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a9ab647fded972e0d0ed346bc94d0a73c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a9ab647fded972e0d0ed346bc94d0a73c">SVF::BoundedZ3Expr::plus_infinity</a></div><div class="ttdeci">static BoundedZ3Expr plus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00098">BoundedZ3Expr.h:98</a></div></div>
520
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_abeb6260917a412282ddd174bd835cfa2"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2">SVF::NumericLiteral::max</a></div><div class="ttdeci">static NumericLiteral max(std::vector&lt; NumericLiteral &gt; &amp;_l)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00418">NumericLiteral.h:418</a></div></div>
521
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a89b4521f3907f4886fa1063e93319792"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792">SVF::NumericLiteral::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;out, const NumericLiteral &amp;expr)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00371">NumericLiteral.h:371</a></div></div>
522
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab3e76e79e2113319688aad96db30b5ed"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">SVF::NumericLiteral::eq</a></div><div class="ttdeci">friend bool eq(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00382">NumericLiteral.h:382</a></div></div>
523
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af40c5e287f17eace7182557f46501b29"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af40c5e287f17eace7182557f46501b29">SVF::BoundedZ3Expr::getContext</a></div><div class="ttdeci">static z3::context &amp; getContext()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00108">BoundedZ3Expr.h:108</a></div></div>
552
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab0cb27a9c31ce20500babb0dff9b87bf"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab0cb27a9c31ce20500babb0dff9b87bf">SVF::NumericLiteral::operator&gt;=</a></div><div class="ttdeci">friend NumericLiteral operator&gt;=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00233">NumericLiteral.h:233</a></div></div>
553
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a9ab647fded972e0d0ed346bc94d0a73c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a9ab647fded972e0d0ed346bc94d0a73c">SVF::BoundedZ3Expr::plus_infinity</a></div><div class="ttdeci">static BoundedZ3Expr plus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00100">BoundedZ3Expr.h:100</a></div></div>
554
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_abeb6260917a412282ddd174bd835cfa2"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#abeb6260917a412282ddd174bd835cfa2">SVF::NumericLiteral::max</a></div><div class="ttdeci">static NumericLiteral max(std::vector&lt; NumericLiteral &gt; &amp;_l)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00448">NumericLiteral.h:448</a></div></div>
555
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a89b4521f3907f4886fa1063e93319792"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a89b4521f3907f4886fa1063e93319792">SVF::NumericLiteral::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;out, const NumericLiteral &amp;expr)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00401">NumericLiteral.h:401</a></div></div>
556
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab3e76e79e2113319688aad96db30b5ed"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab3e76e79e2113319688aad96db30b5ed">SVF::NumericLiteral::eq</a></div><div class="ttdeci">friend bool eq(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00412">NumericLiteral.h:412</a></div></div>
557
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af40c5e287f17eace7182557f46501b29"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af40c5e287f17eace7182557f46501b29">SVF::BoundedZ3Expr::getContext</a></div><div class="ttdeci">static z3::context &amp; getContext()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00110">BoundedZ3Expr.h:110</a></div></div>
524
558
  <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html">SVF::BoundedZ3Expr</a></div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00042">BoundedZ3Expr.h:42</a></div></div>
525
559
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a18b2e134e047b2dde1774b93bb5b40dd"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a18b2e134e047b2dde1774b93bb5b40dd">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(const z3::expr &amp;e)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00051">NumericLiteral.h:51</a></div></div>
526
560
  <div class="ttc" id="aBoundedZ3Expr_8h_html"><div class="ttname"><a href="BoundedZ3Expr_8h.html">BoundedZ3Expr.h</a></div></div>
527
561
  <div class="ttc" id="acJSON_8cpp_html_ab6e2ea6dc7bd57d1483413449998230a"><div class="ttname"><a href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a></div><div class="ttdeci">cJSON * n</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02558">cJSON.cpp:2558</a></div></div>
528
562
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad58b37aff4db180c548cde777b19ed6a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad58b37aff4db180c548cde777b19ed6a">SVF::NumericLiteral::operator=</a></div><div class="ttdeci">NumericLiteral &amp; operator=(const NumericLiteral &amp;)=default</div><div class="ttdoc">Operator = , another Copy Constructor.</div></div>
529
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a7139e461f2ac323b7e275f40dfd684da"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da">SVF::NumericLiteral::operator&amp;</a></div><div class="ttdeci">friend NumericLiteral operator&amp;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00300">NumericLiteral.h:300</a></div></div>
530
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a90c87bed7210246db310dbecc61326ac"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a90c87bed7210246db310dbecc61326ac">SVF::BoundedZ3Expr::is_minus_infinite</a></div><div class="ttdeci">bool is_minus_infinite() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00078">BoundedZ3Expr.h:78</a></div></div>
531
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1bf5f9d33d3c10e53537376d22936bdb"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(s32_t i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00053">NumericLiteral.h:53</a></div></div>
532
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab4f45675a9fecb201d0fe05d107fcb97"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97">SVF::NumericLiteral::min</a></div><div class="ttdeci">friend NumericLiteral min(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00387">NumericLiteral.h:387</a></div></div>
563
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_aa9305d8e1b9ba3201522704f39295d90"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#aa9305d8e1b9ba3201522704f39295d90">SVF::BoundedZ3Expr::getRealNumeral</a></div><div class="ttdeci">double getRealNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00370">BoundedZ3Expr.h:370</a></div></div>
564
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a7139e461f2ac323b7e275f40dfd684da"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a7139e461f2ac323b7e275f40dfd684da">SVF::NumericLiteral::operator&amp;</a></div><div class="ttdeci">friend NumericLiteral operator&amp;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00330">NumericLiteral.h:330</a></div></div>
565
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a90c87bed7210246db310dbecc61326ac"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a90c87bed7210246db310dbecc61326ac">SVF::BoundedZ3Expr::is_minus_infinite</a></div><div class="ttdeci">bool is_minus_infinite() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00080">BoundedZ3Expr.h:80</a></div></div>
566
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1bf5f9d33d3c10e53537376d22936bdb"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1bf5f9d33d3c10e53537376d22936bdb">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(s32_t i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00057">NumericLiteral.h:57</a></div></div>
567
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab4f45675a9fecb201d0fe05d107fcb97"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab4f45675a9fecb201d0fe05d107fcb97">SVF::NumericLiteral::min</a></div><div class="ttdeci">friend NumericLiteral min(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00417">NumericLiteral.h:417</a></div></div>
533
568
  <div class="ttc" id="aclassSVF_1_1Z3Expr_html"><div class="ttname"><a href="classSVF_1_1Z3Expr.html">SVF::Z3Expr</a></div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00038">Z3Expr.h:38</a></div></div>
534
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af40973365cb681abc4cc63c4fb2a6d07"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07">SVF::NumericLiteral::operator&lt;=</a></div><div class="ttdeci">friend NumericLiteral operator&lt;=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00198">NumericLiteral.h:198</a></div></div>
535
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac4acd8ca01d2aa1715c18beb46b0ae1d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">SVF::NumericLiteral::is_infinity</a></div><div class="ttdeci">bool is_infinity() const</div><div class="ttdoc">Check if this is infinity (either of plus/minus)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00106">NumericLiteral.h:106</a></div></div>
536
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_acce45e2300e0c1871efec36e727ed77d"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#acce45e2300e0c1871efec36e727ed77d">SVF::BoundedZ3Expr::geq</a></div><div class="ttdeci">BoundedZ3Expr geq(const BoundedZ3Expr &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00133">BoundedZ3Expr.h:133</a></div></div>
537
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a4181e5e15e10304ea524e5f8b2a3f576"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">SVF::NumericLiteral::getNumeral</a></div><div class="ttdeci">s64_t getNumeral() const</div><div class="ttdoc">Return Numeral.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00118">NumericLiteral.h:118</a></div></div>
538
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a69384aac86c966e7ae8609f5ea97361c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">SVF::BoundedZ3Expr::is_true</a></div><div class="ttdeci">bool is_true() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00343">BoundedZ3Expr.h:343</a></div></div>
569
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af40973365cb681abc4cc63c4fb2a6d07"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af40973365cb681abc4cc63c4fb2a6d07">SVF::NumericLiteral::operator&lt;=</a></div><div class="ttdeci">friend NumericLiteral operator&lt;=(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00228">NumericLiteral.h:228</a></div></div>
570
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac4acd8ca01d2aa1715c18beb46b0ae1d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac4acd8ca01d2aa1715c18beb46b0ae1d">SVF::NumericLiteral::is_infinity</a></div><div class="ttdeci">bool is_infinity() const</div><div class="ttdoc">Check if this is infinity (either of plus/minus)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00110">NumericLiteral.h:110</a></div></div>
571
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_acce45e2300e0c1871efec36e727ed77d"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#acce45e2300e0c1871efec36e727ed77d">SVF::BoundedZ3Expr::geq</a></div><div class="ttdeci">BoundedZ3Expr geq(const BoundedZ3Expr &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00135">BoundedZ3Expr.h:135</a></div></div>
572
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a4181e5e15e10304ea524e5f8b2a3f576"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a4181e5e15e10304ea524e5f8b2a3f576">SVF::NumericLiteral::getNumeral</a></div><div class="ttdeci">s64_t getNumeral() const</div><div class="ttdoc">Return Numeral, default type is double in case to support both int and float.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00132">NumericLiteral.h:132</a></div></div>
573
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a69384aac86c966e7ae8609f5ea97361c"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a69384aac86c966e7ae8609f5ea97361c">SVF::BoundedZ3Expr::is_true</a></div><div class="ttdeci">bool is_true() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00345">BoundedZ3Expr.h:345</a></div></div>
539
574
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
540
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_ae1a0bc98b18563c87136dea2a60f67be"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">SVF::BoundedZ3Expr::is_zero</a></div><div class="ttdeci">bool is_zero() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00113">BoundedZ3Expr.h:113</a></div></div>
541
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af3544c0025b1796bce75891cf9c4e28a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">SVF::NumericLiteral::ite</a></div><div class="ttdeci">friend NumericLiteral ite(const NumericLiteral &amp;cond, const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdoc">Return ite? lhs : rhs.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00366">NumericLiteral.h:366</a></div></div>
542
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a6ed0bfe0bbecc1a403434aa70744691c"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c">SVF::NumericLiteral::abs</a></div><div class="ttdeci">friend NumericLiteral abs(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00397">NumericLiteral.h:397</a></div></div>
543
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab5decc89d3b8a4f5a171b8a01a1afef8"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8">SVF::NumericLiteral::operator||</a></div><div class="ttdeci">friend NumericLiteral operator||(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00341">NumericLiteral.h:341</a></div></div>
544
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_adfd0722351b93c3ab7ffd4147e278f7d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d">SVF::NumericLiteral::operator&lt;&lt;</a></div><div class="ttdeci">friend NumericLiteral operator&lt;&lt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00323">NumericLiteral.h:323</a></div></div>
545
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af57d038fab712a70aab7a6984ec2ba67"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67">SVF::NumericLiteral::operator&amp;&amp;</a></div><div class="ttdeci">friend NumericLiteral operator&amp;&amp;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00336">NumericLiteral.h:336</a></div></div>
546
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a851b5ce5328fd08c1e06ed5ed5883cb9"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(s64_t i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00055">NumericLiteral.h:55</a></div></div>
547
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af62c2d6bc40080b9728c107cf317184b"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af62c2d6bc40080b9728c107cf317184b">SVF::BoundedZ3Expr::getNumeral</a></div><div class="ttdeci">s64_t getNumeral() const</div><div class="ttdoc">Return Numeral.</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00349">BoundedZ3Expr.h:349</a></div></div>
548
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a033ae449eba6157a1506f716cecc1a7b"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a033ae449eba6157a1506f716cecc1a7b">SVF::BoundedZ3Expr::minus_infinity</a></div><div class="ttdeci">static BoundedZ3Expr minus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00103">BoundedZ3Expr.h:103</a></div></div>
549
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab8ea498ca849eb969e721772d432b29d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">SVF::NumericLiteral::geq</a></div><div class="ttdeci">bool geq(const NumericLiteral &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00153">NumericLiteral.h:153</a></div></div>
550
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a8f4a1492bdce0c3d04c50c746279272d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d">SVF::NumericLiteral::operator&lt;</a></div><div class="ttdeci">friend NumericLiteral operator&lt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00193">NumericLiteral.h:193</a></div></div>
551
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a42f5bdc956614b4c431f7045f744ac7d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">SVF::NumericLiteral::plus_infinity</a></div><div class="ttdeci">static NumericLiteral plus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00073">NumericLiteral.h:73</a></div></div>
552
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a9e7a696842de2a4fae08a75d72a807ec"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec">SVF::NumericLiteral::max</a></div><div class="ttdeci">friend NumericLiteral max(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00392">NumericLiteral.h:392</a></div></div>
553
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aad45bcd52d571ca62faa4dd6a9f758d6"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(BoundedZ3Expr z3Expr)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00057">NumericLiteral.h:57</a></div></div>
575
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_ae1a0bc98b18563c87136dea2a60f67be"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">SVF::BoundedZ3Expr::is_zero</a></div><div class="ttdeci">bool is_zero() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00115">BoundedZ3Expr.h:115</a></div></div>
576
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af3544c0025b1796bce75891cf9c4e28a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af3544c0025b1796bce75891cf9c4e28a">SVF::NumericLiteral::ite</a></div><div class="ttdeci">friend NumericLiteral ite(const NumericLiteral &amp;cond, const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdoc">Return ite? lhs : rhs.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00396">NumericLiteral.h:396</a></div></div>
577
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a6ed0bfe0bbecc1a403434aa70744691c"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a6ed0bfe0bbecc1a403434aa70744691c">SVF::NumericLiteral::abs</a></div><div class="ttdeci">friend NumericLiteral abs(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00427">NumericLiteral.h:427</a></div></div>
578
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab5decc89d3b8a4f5a171b8a01a1afef8"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab5decc89d3b8a4f5a171b8a01a1afef8">SVF::NumericLiteral::operator||</a></div><div class="ttdeci">friend NumericLiteral operator||(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00371">NumericLiteral.h:371</a></div></div>
579
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_adfd0722351b93c3ab7ffd4147e278f7d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#adfd0722351b93c3ab7ffd4147e278f7d">SVF::NumericLiteral::operator&lt;&lt;</a></div><div class="ttdeci">friend NumericLiteral operator&lt;&lt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00353">NumericLiteral.h:353</a></div></div>
580
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_af57d038fab712a70aab7a6984ec2ba67"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#af57d038fab712a70aab7a6984ec2ba67">SVF::NumericLiteral::operator&amp;&amp;</a></div><div class="ttdeci">friend NumericLiteral operator&amp;&amp;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00366">NumericLiteral.h:366</a></div></div>
581
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a851b5ce5328fd08c1e06ed5ed5883cb9"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a851b5ce5328fd08c1e06ed5ed5883cb9">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(s64_t i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00059">NumericLiteral.h:59</a></div></div>
582
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a75fc2abc930b9405130106a51c29f314"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a75fc2abc930b9405130106a51c29f314">SVF::NumericLiteral::is_int</a></div><div class="ttdeci">bool is_int() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00121">NumericLiteral.h:121</a></div></div>
583
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af62c2d6bc40080b9728c107cf317184b"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af62c2d6bc40080b9728c107cf317184b">SVF::BoundedZ3Expr::getNumeral</a></div><div class="ttdeci">s64_t getNumeral() const</div><div class="ttdoc">Return Numeral.</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00378">BoundedZ3Expr.h:378</a></div></div>
584
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a033ae449eba6157a1506f716cecc1a7b"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a033ae449eba6157a1506f716cecc1a7b">SVF::BoundedZ3Expr::minus_infinity</a></div><div class="ttdeci">static BoundedZ3Expr minus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00105">BoundedZ3Expr.h:105</a></div></div>
585
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab8ea498ca849eb969e721772d432b29d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">SVF::NumericLiteral::geq</a></div><div class="ttdeci">bool geq(const NumericLiteral &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00183">NumericLiteral.h:183</a></div></div>
586
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a8f4a1492bdce0c3d04c50c746279272d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a8f4a1492bdce0c3d04c50c746279272d">SVF::NumericLiteral::operator&lt;</a></div><div class="ttdeci">friend NumericLiteral operator&lt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00223">NumericLiteral.h:223</a></div></div>
587
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aa69f9536301d6529eb1d0caaec2fcc63"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aa69f9536301d6529eb1d0caaec2fcc63">SVF::NumericLiteral::getRealNumeral</a></div><div class="ttdeci">double getRealNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00143">NumericLiteral.h:143</a></div></div>
588
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a42f5bdc956614b4c431f7045f744ac7d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a42f5bdc956614b4c431f7045f744ac7d">SVF::NumericLiteral::plus_infinity</a></div><div class="ttdeci">static NumericLiteral plus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00077">NumericLiteral.h:77</a></div></div>
589
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a9e7a696842de2a4fae08a75d72a807ec"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a9e7a696842de2a4fae08a75d72a807ec">SVF::NumericLiteral::max</a></div><div class="ttdeci">friend NumericLiteral max(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00422">NumericLiteral.h:422</a></div></div>
590
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aad45bcd52d571ca62faa4dd6a9f758d6"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aad45bcd52d571ca62faa4dd6a9f758d6">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(BoundedZ3Expr z3Expr)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00061">NumericLiteral.h:61</a></div></div>
554
591
  <div class="ttc" id="anamespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00047">GeneralType.h:47</a></div></div>
555
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1e693e837e8d67ce76a03ec243c94f15"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">SVF::NumericLiteral::is_minus_infinity</a></div><div class="ttdeci">bool is_minus_infinity() const</div><div class="ttdoc">Check if this is minus infinity.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00094">NumericLiteral.h:94</a></div></div>
556
- <div class="ttc" id="astructstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4_html_a57f6de2fad6579075e6c7d60ddbff2a5"><div class="ttname"><a href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5">std::hash&lt; SVF::NumericLiteral &gt;::operator()</a></div><div class="ttdeci">size_t operator()(const SVF::NumericLiteral &amp;n) const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00443">NumericLiteral.h:443</a></div></div>
592
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1e693e837e8d67ce76a03ec243c94f15"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1e693e837e8d67ce76a03ec243c94f15">SVF::NumericLiteral::is_minus_infinity</a></div><div class="ttdeci">bool is_minus_infinity() const</div><div class="ttdoc">Check if this is minus infinity.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00098">NumericLiteral.h:98</a></div></div>
593
+ <div class="ttc" id="astructstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4_html_a57f6de2fad6579075e6c7d60ddbff2a5"><div class="ttname"><a href="structstd_1_1hash_3_01SVF_1_1NumericLiteral_01_4.html#a57f6de2fad6579075e6c7d60ddbff2a5">std::hash&lt; SVF::NumericLiteral &gt;::operator()</a></div><div class="ttdeci">size_t operator()(const SVF::NumericLiteral &amp;n) const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00473">NumericLiteral.h:473</a></div></div>
557
594
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a72502f7f536418621485e90ab98c2016"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVF::SVFUtil::move</a></div><div class="ttdeci">constexpr std::remove_reference&lt; T &gt;::type &amp;&amp; move(T &amp;&amp;t) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00621">SVFUtil.h:621</a></div></div>
558
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac0872619aefd1f680d08d3ec4360537c"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">SVF::NumericLiteral::minus_infinity</a></div><div class="ttdeci">static NumericLiteral minus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00078">NumericLiteral.h:78</a></div></div>
559
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a32f68f45719c8be05357d7622dd66f6b"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">SVF::NumericLiteral::getContext</a></div><div class="ttdeci">static z3::context &amp; getContext()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00083">NumericLiteral.h:83</a></div></div>
560
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a96a8e27a0187360eadc2a6821d163ae3"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3">SVF::NumericLiteral::min</a></div><div class="ttdeci">static NumericLiteral min(std::vector&lt; NumericLiteral &gt; &amp;_l)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00403">NumericLiteral.h:403</a></div></div>
561
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a325e99ded5a026ecdae64004b9392f4a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a">SVF::NumericLiteral::equal</a></div><div class="ttdeci">bool equal(const NumericLiteral &amp;rhs) const</div><div class="ttdoc">Check two object is equal.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00124">NumericLiteral.h:124</a></div></div>
562
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aecb4c8bd2c66a906a4b4556c80838d1d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d">SVF::NumericLiteral::operator-</a></div><div class="ttdeci">friend NumericLiteral operator-(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00225">NumericLiteral.h:225</a></div></div>
563
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aa4b036114c2980f578c359fff6f4e604"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604">SVF::NumericLiteral::operator^</a></div><div class="ttdeci">friend NumericLiteral operator^(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00295">NumericLiteral.h:295</a></div></div>
564
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aec2acc023ff24e72ac5ca7ea57761df3"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3">SVF::NumericLiteral::operator-</a></div><div class="ttdeci">friend NumericLiteral operator-(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00351">NumericLiteral.h:351</a></div></div>
565
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af962942fbf3341f0679959cfd810d3a5"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af962942fbf3341f0679959cfd810d3a5">SVF::BoundedZ3Expr::leq</a></div><div class="ttdeci">BoundedZ3Expr leq(const BoundedZ3Expr &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00128">BoundedZ3Expr.h:128</a></div></div>
595
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac0872619aefd1f680d08d3ec4360537c"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac0872619aefd1f680d08d3ec4360537c">SVF::NumericLiteral::minus_infinity</a></div><div class="ttdeci">static NumericLiteral minus_infinity()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00082">NumericLiteral.h:82</a></div></div>
596
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a32f68f45719c8be05357d7622dd66f6b"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a32f68f45719c8be05357d7622dd66f6b">SVF::NumericLiteral::getContext</a></div><div class="ttdeci">static z3::context &amp; getContext()</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00087">NumericLiteral.h:87</a></div></div>
597
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a96a8e27a0187360eadc2a6821d163ae3"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a96a8e27a0187360eadc2a6821d163ae3">SVF::NumericLiteral::min</a></div><div class="ttdeci">static NumericLiteral min(std::vector&lt; NumericLiteral &gt; &amp;_l)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00433">NumericLiteral.h:433</a></div></div>
598
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a325e99ded5a026ecdae64004b9392f4a"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a325e99ded5a026ecdae64004b9392f4a">SVF::NumericLiteral::equal</a></div><div class="ttdeci">bool equal(const NumericLiteral &amp;rhs) const</div><div class="ttdoc">Check two object is equal.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00154">NumericLiteral.h:154</a></div></div>
599
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aecb4c8bd2c66a906a4b4556c80838d1d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aecb4c8bd2c66a906a4b4556c80838d1d">SVF::NumericLiteral::operator-</a></div><div class="ttdeci">friend NumericLiteral operator-(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00255">NumericLiteral.h:255</a></div></div>
600
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aa4b036114c2980f578c359fff6f4e604"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aa4b036114c2980f578c359fff6f4e604">SVF::NumericLiteral::operator^</a></div><div class="ttdeci">friend NumericLiteral operator^(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00325">NumericLiteral.h:325</a></div></div>
601
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a8e19113913c2aa236ab35d3bdd49541c"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a8e19113913c2aa236ab35d3bdd49541c">SVF::NumericLiteral::getIntNumeral</a></div><div class="ttdeci">s64_t getIntNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00148">NumericLiteral.h:148</a></div></div>
602
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aec2acc023ff24e72ac5ca7ea57761df3"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aec2acc023ff24e72ac5ca7ea57761df3">SVF::NumericLiteral::operator-</a></div><div class="ttdeci">friend NumericLiteral operator-(const NumericLiteral &amp;lhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00381">NumericLiteral.h:381</a></div></div>
603
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_af962942fbf3341f0679959cfd810d3a5"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#af962942fbf3341f0679959cfd810d3a5">SVF::BoundedZ3Expr::leq</a></div><div class="ttdeci">BoundedZ3Expr leq(const BoundedZ3Expr &amp;rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00130">BoundedZ3Expr.h:130</a></div></div>
566
604
  <div class="ttc" id="aGeneralType_8h_html"><div class="ttname"><a href="GeneralType_8h.html">GeneralType.h</a></div></div>
567
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aa01880cdfc3b9504bef63a3bf315c54b"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">SVF::NumericLiteral::leq</a></div><div class="ttdeci">bool leq(const NumericLiteral &amp;rhs) const</div><div class="ttdoc">Less then or equal.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00130">NumericLiteral.h:130</a></div></div>
568
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a538deb0b9e88fd99b9768f5775e58ca7"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">SVF::NumericLiteral::is_plus_infinity</a></div><div class="ttdeci">bool is_plus_infinity() const</div><div class="ttdoc">Check if this is plus infinity.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00100">NumericLiteral.h:100</a></div></div>
569
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad99ed283f2b7875f13aea347fa2c8b54"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54">SVF::NumericLiteral::operator&gt;</a></div><div class="ttdeci">friend NumericLiteral operator&gt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00188">NumericLiteral.h:188</a></div></div>
605
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ade14f3444a718ad742a84cdf18819b8e"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ade14f3444a718ad742a84cdf18819b8e">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(float i)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00053">NumericLiteral.h:53</a></div></div>
606
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_aa01880cdfc3b9504bef63a3bf315c54b"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#aa01880cdfc3b9504bef63a3bf315c54b">SVF::NumericLiteral::leq</a></div><div class="ttdeci">bool leq(const NumericLiteral &amp;rhs) const</div><div class="ttdoc">Less then or equal.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00160">NumericLiteral.h:160</a></div></div>
607
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a538deb0b9e88fd99b9768f5775e58ca7"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a538deb0b9e88fd99b9768f5775e58ca7">SVF::NumericLiteral::is_plus_infinity</a></div><div class="ttdeci">bool is_plus_infinity() const</div><div class="ttdoc">Check if this is plus infinity.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00104">NumericLiteral.h:104</a></div></div>
608
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ad99ed283f2b7875f13aea347fa2c8b54"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ad99ed283f2b7875f13aea347fa2c8b54">SVF::NumericLiteral::operator&gt;</a></div><div class="ttdeci">friend NumericLiteral operator&gt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00218">NumericLiteral.h:218</a></div></div>
570
609
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a85e42942640e81bc8587f9e0ed96f58b"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a85e42942640e81bc8587f9e0ed96f58b">SVF::NumericLiteral::NumericLiteral</a></div><div class="ttdeci">NumericLiteral(const Z3Expr &amp;z3Expr)</div><div class="ttdoc">Create a new NumericLiteral from s32_t.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00049">NumericLiteral.h:49</a></div></div>
571
610
  <div class="ttc" id="aclassSVF_1_1NumericLiteral_html"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html">SVF::NumericLiteral</a></div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00038">NumericLiteral.h:38</a></div></div>
572
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1a06b5b2e22ba2265d57b6f0c9ed9d84"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84">SVF::NumericLiteral::operator+</a></div><div class="ttdeci">friend NumericLiteral operator+(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00208">NumericLiteral.h:208</a></div></div>
611
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a2fe2eb429c125e33014bab7e21c77b9e"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a2fe2eb429c125e33014bab7e21c77b9e">SVF::NumericLiteral::is_real</a></div><div class="ttdeci">bool is_real() const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00126">NumericLiteral.h:126</a></div></div>
612
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1a06b5b2e22ba2265d57b6f0c9ed9d84"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1a06b5b2e22ba2265d57b6f0c9ed9d84">SVF::NumericLiteral::operator+</a></div><div class="ttdeci">friend NumericLiteral operator+(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00238">NumericLiteral.h:238</a></div></div>
573
613
  <div class="ttc" id="anamespaceSVF_html_ad781b0b14e89773e774072b280658ef3"><div class="ttname"><a href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">SVF::s64_t</a></div><div class="ttdeci">signed long long s64_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00049">GeneralType.h:49</a></div></div>
574
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1ed3cffe1d4ee076b8683f40806619ed"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed">SVF::NumericLiteral::operator==</a></div><div class="ttdeci">friend NumericLiteral operator==(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdoc">Reload operator.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00178">NumericLiteral.h:178</a></div></div>
575
- <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a7f5158affedda8ddf53ec6cb442a6297"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">SVF::BoundedZ3Expr::simplify</a></div><div class="ttdeci">BoundedZ3Expr simplify() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00338">BoundedZ3Expr.h:338</a></div></div>
576
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a5b421ff78df11b84654155dc88bb5516"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516">SVF::NumericLiteral::operator&gt;&gt;</a></div><div class="ttdeci">friend NumericLiteral operator&gt;&gt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00310">NumericLiteral.h:310</a></div></div>
577
- <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a24e0085eb116dfcf0744af5531dbaf05"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05">SVF::NumericLiteral::operator|</a></div><div class="ttdeci">friend NumericLiteral operator|(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00305">NumericLiteral.h:305</a></div></div>
614
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a1ed3cffe1d4ee076b8683f40806619ed"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a1ed3cffe1d4ee076b8683f40806619ed">SVF::NumericLiteral::operator==</a></div><div class="ttdeci">friend NumericLiteral operator==(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdoc">Reload operator.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00208">NumericLiteral.h:208</a></div></div>
615
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ac2994e13c3572b114c57a9bb4f155d67"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ac2994e13c3572b114c57a9bb4f155d67">SVF::NumericLiteral::getExpr</a></div><div class="ttdeci">Z3Expr getExpr() const</div><div class="ttdoc">Return Expr.</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00138">NumericLiteral.h:138</a></div></div>
616
+ <div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_a7f5158affedda8ddf53ec6cb442a6297"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#a7f5158affedda8ddf53ec6cb442a6297">SVF::BoundedZ3Expr::simplify</a></div><div class="ttdeci">BoundedZ3Expr simplify() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00340">BoundedZ3Expr.h:340</a></div></div>
617
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a5b421ff78df11b84654155dc88bb5516"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a5b421ff78df11b84654155dc88bb5516">SVF::NumericLiteral::operator&gt;&gt;</a></div><div class="ttdeci">friend NumericLiteral operator&gt;&gt;(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00340">NumericLiteral.h:340</a></div></div>
618
+ <div class="ttc" id="aclassSVF_1_1NumericLiteral_html_a24e0085eb116dfcf0744af5531dbaf05"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#a24e0085eb116dfcf0744af5531dbaf05">SVF::NumericLiteral::operator|</a></div><div class="ttdeci">friend NumericLiteral operator|(const NumericLiteral &amp;lhs, const NumericLiteral &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00335">NumericLiteral.h:335</a></div></div>
578
619
  <!-- start footer part -->
579
620
  <hr class="footer"/><address class="footer"><small>
580
621
  Generated by &#160;<a href="http://www.doxygen.org/index.html">