./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version aa418289 Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash c6d763742402f5574758af03df7d1953644b4c87 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash c6d763742402f5574758af03df7d1953644b4c87 ............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 06:56:10,913 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 06:56:10,914 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 06:56:10,921 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 06:56:10,921 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 06:56:10,922 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 06:56:10,922 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 06:56:10,924 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 06:56:10,925 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 06:56:10,925 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 06:56:10,926 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 06:56:10,926 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 06:56:10,927 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 06:56:10,927 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 06:56:10,928 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 06:56:10,929 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 06:56:10,929 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 06:56:10,930 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 06:56:10,932 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 06:56:10,933 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 06:56:10,934 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 06:56:10,935 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 06:56:10,937 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 06:56:10,937 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 06:56:10,937 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 06:56:10,938 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 06:56:10,939 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 06:56:10,939 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 06:56:10,940 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 06:56:10,941 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 06:56:10,941 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 06:56:10,942 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 06:56:10,942 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 06:56:10,942 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 06:56:10,942 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 06:56:10,943 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 06:56:10,944 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf [2018-11-23 06:56:10,953 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 06:56:10,953 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 06:56:10,954 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 06:56:10,954 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 06:56:10,954 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 06:56:10,954 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 06:56:10,955 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 06:56:10,955 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 06:56:10,956 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 06:56:10,956 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 06:56:10,957 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 06:56:10,957 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 06:56:10,957 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 06:56:10,957 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 06:56:10,957 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 06:56:10,957 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 06:56:10,957 INFO L133 SettingsManager]: * Trace refinement strategy=PENGUIN [2018-11-23 06:56:10,958 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 06:56:10,958 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 06:56:10,958 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Kojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c6d763742402f5574758af03df7d1953644b4c87 [2018-11-23 06:56:10,979 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 06:56:10,987 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 06:56:10,989 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 06:56:10,990 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 06:56:10,990 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 06:56:10,990 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c [2018-11-23 06:56:11,025 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/f4f71c16a/bd3049914f06448f8ff7f3a713c0270b/FLAG8a942c9cf [2018-11-23 06:56:11,346 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 06:56:11,346 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c [2018-11-23 06:56:11,350 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/f4f71c16a/bd3049914f06448f8ff7f3a713c0270b/FLAG8a942c9cf [2018-11-23 06:56:11,358 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/f4f71c16a/bd3049914f06448f8ff7f3a713c0270b [2018-11-23 06:56:11,360 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 06:56:11,361 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 06:56:11,362 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 06:56:11,362 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 06:56:11,364 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 06:56:11,364 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,366 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@43f50e16 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11, skipping insertion in model container [2018-11-23 06:56:11,366 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,371 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 06:56:11,391 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 06:56:11,533 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 06:56:11,537 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 06:56:11,572 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 06:56:11,625 INFO L195 MainTranslator]: Completed translation [2018-11-23 06:56:11,625 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11 WrapperNode [2018-11-23 06:56:11,625 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 06:56:11,626 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 06:56:11,626 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 06:56:11,626 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 06:56:11,631 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,638 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,656 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 06:56:11,656 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 06:56:11,656 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 06:56:11,656 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 06:56:11,662 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,662 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,665 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,665 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,672 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,676 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,678 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... [2018-11-23 06:56:11,680 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 06:56:11,680 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 06:56:11,680 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 06:56:11,680 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 06:56:11,681 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:11" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 06:56:11,713 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 06:56:11,713 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 06:56:12,175 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 06:56:12,176 INFO L280 CfgBuilder]: Removed 24 assue(true) statements. [2018-11-23 06:56:12,176 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:12 BoogieIcfgContainer [2018-11-23 06:56:12,176 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 06:56:12,177 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 06:56:12,177 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 06:56:12,186 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 06:56:12,186 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:12" (1/1) ... [2018-11-23 06:56:12,198 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 06:56:12,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:56:12,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 44 states and 74 transitions. [2018-11-23 06:56:12,230 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 74 transitions. [2018-11-23 06:56:12,232 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2018-11-23 06:56:12,232 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:56:12,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 06:56:12,314 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 06:56:12,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:56:12,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 44 states and 67 transitions. [2018-11-23 06:56:12,323 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 67 transitions. [2018-11-23 06:56:12,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 06:56:12,323 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:56:12,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 06:56:12,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 06:56:12,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 06:56:12,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 06:56:12,514 WARN L493 CodeCheckObserver]: This program is UNSAFE, Check terminated with 2 iterations. ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~one_fmod~0 := 1.0;call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(16);call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 8 + ~#Zero_fmod~0.offset, 8);havoc main_#res;havoc main_#t~nondet18, main_#t~ret19, main_#t~ret20, main_~res~0, main_~y~0, main_~x~0;main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0);main_~x~0 := main_#t~nondet18;havoc main_#t~nondet18;isfinite_double_#in~x := main_~x~0;havoc isfinite_double_#res;havoc isfinite_double_#t~mem16, isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, isfinite_double_~x, isfinite_double_~hx~1;isfinite_double_~x := isfinite_double_#in~x;havoc isfinite_double_~hx~1; VAL [ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset := #Ultimate.alloc(8);call write~real(isfinite_double_~x, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8);call isfinite_double_#t~mem16 := read~int(isfinite_double_~#gh_u~0.base, 4 + isfinite_double_~#gh_u~0.offset, 4);isfinite_double_~hx~1 := (if isfinite_double_#t~mem16 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem16 % 4294967296 % 4294967296 else isfinite_double_#t~mem16 % 4294967296 % 4294967296 - 4294967296);call write~real(isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8);havoc isfinite_double_#t~mem16;havoc isfinite_double_#t~union17;call ULTIMATE.dealloc(isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset);havoc isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset; VAL [ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296);main_#t~ret19 := isfinite_double_#res;assume -2147483648 <= main_#t~ret19 && main_#t~ret19 <= 2147483647; VAL [ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |ULTIMATE.start_main_#t~ret19|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume 0 != main_#t~ret19;havoc main_#t~ret19;fmod_double_#in~x, fmod_double_#in~y := main_~x~0, main_~y~0;havoc fmod_double_#res;havoc fmod_double_#t~mem0, fmod_double_#t~union1, fmod_double_#t~mem2, fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, fmod_double_#t~mem4, fmod_double_#t~union5, fmod_double_#t~mem6, fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, fmod_double_#t~mem8, fmod_double_#t~mem10, fmod_double_#t~post9, fmod_double_#t~mem11, fmod_double_#t~mem12, fmod_double_#t~union13.lsw, fmod_double_#t~union13.msw, fmod_double_~#iw_u~0.base, fmod_double_~#iw_u~0.offset, fmod_double_#t~mem14, fmod_double_#t~union15.lsw, fmod_double_#t~union15.msw, fmod_double_~#iw_u~1.base, fmod_double_~#iw_u~1.offset, fmod_double_~x, fmod_double_~y, fmod_double_~n~0, fmod_double_~hx~0, fmod_double_~hy~0, fmod_double_~hz~0, fmod_double_~ix~0, fmod_double_~iy~0, fmod_double_~sx~0, fmod_double_~i~0, fmod_double_~lx~0, fmod_double_~ly~0, fmod_double_~lz~0;fmod_double_~x := fmod_double_#in~x;fmod_double_~y := fmod_double_#in~y;havoc fmod_double_~n~0;havoc fmod_double_~hx~0;havoc fmod_double_~hy~0;havoc fmod_double_~hz~0;havoc fmod_double_~ix~0;havoc fmod_double_~iy~0;havoc fmod_double_~sx~0;havoc fmod_double_~i~0;havoc fmod_double_~lx~0;havoc fmod_double_~ly~0;havoc fmod_double_~lz~0; VAL [ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset := #Ultimate.alloc(8);call write~real(fmod_double_~x, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8);call fmod_double_#t~mem0 := read~int(fmod_double_~#ew_u~0.base, 4 + fmod_double_~#ew_u~0.offset, 4);fmod_double_~hx~0 := (if fmod_double_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem0 % 4294967296 % 4294967296 else fmod_double_#t~mem0 % 4294967296 % 4294967296 - 4294967296);call write~real(fmod_double_#t~union1, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8);havoc fmod_double_#t~mem0;havoc fmod_double_#t~union1;call fmod_double_#t~mem2 := read~int(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 4);fmod_double_~lx~0 := fmod_double_#t~mem2;call write~real(fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8);havoc fmod_double_#t~union3;havoc fmod_double_#t~mem2;call ULTIMATE.dealloc(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset);havoc fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset := #Ultimate.alloc(8);call write~real(fmod_double_~y, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8);call fmod_double_#t~mem4 := read~int(fmod_double_~#ew_u~1.base, 4 + fmod_double_~#ew_u~1.offset, 4);fmod_double_~hy~0 := (if fmod_double_#t~mem4 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem4 % 4294967296 % 4294967296 else fmod_double_#t~mem4 % 4294967296 % 4294967296 - 4294967296);call write~real(fmod_double_#t~union5, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8);havoc fmod_double_#t~mem4;havoc fmod_double_#t~union5;call fmod_double_#t~mem6 := read~int(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 4);fmod_double_~ly~0 := fmod_double_#t~mem6;call write~real(fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8);havoc fmod_double_#t~mem6;havoc fmod_double_#t~union7;call ULTIMATE.dealloc(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset);havoc fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~hy~0=8404, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~hy~0=8404, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] fmod_double_~sx~0 := (if ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296);fmod_double_~hx~0 := ~bitwiseXor(fmod_double_~hx~0, fmod_double_~sx~0);fmod_double_~hy~0 := ~bitwiseAnd(fmod_double_~hy~0, 2147483647); VAL [ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~sx~0=4335, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume (0 == ~bitwiseOr(fmod_double_~hy~0, fmod_double_~ly~0) % 4294967296 || fmod_double_~hx~0 >= 2146435072) || ~bitwiseOr(fmod_double_~hy~0, ~bitwiseOr(fmod_double_~ly~0, -fmod_double_~ly~0) / 2147483648) % 4294967296 > 2146435072;fmod_double_#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y), ~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y)); VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~sx~0=4335, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] main_#t~ret20 := fmod_double_#res;main_~res~0 := main_#t~ret20;havoc main_#t~ret20; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~sx~0=4335, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~res~0=13.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_fmod_double_#res|=13.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, main_~x~0); VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~sx~0=4335, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~res~0=13.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_fmod_double_#res|=13.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !false; VAL [ULTIMATE.start_fmod_double_~hx~0=0, ULTIMATE.start_fmod_double_~lx~0=10, ULTIMATE.start_fmod_double_~ly~0=13, ULTIMATE.start_fmod_double_~sx~0=4335, ULTIMATE.start_fmod_double_~x=2.0, ULTIMATE.start_fmod_double_~y=12.0, ULTIMATE.start_isfinite_double_~hx~1=8404, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~res~0=13.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=12.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_double_#in~x|=2.0, |ULTIMATE.start_fmod_double_#in~y|=12.0, |ULTIMATE.start_fmod_double_#res|=13.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=(- 2147483648), |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(16); [L15-L18] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 8); [L15-L18] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 8 + ~#Zero_fmod~0.offset, 8); [?] havoc main_#res; [?] havoc main_#t~nondet18, main_#t~ret19, main_#t~ret20, main_~res~0, main_~y~0, main_~x~0; [L177] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] main_~x~0 := main_#t~nondet18; [L178] havoc main_#t~nondet18; [L180] isfinite_double_#in~x := main_~x~0; [L180] havoc isfinite_double_#res; [L180] havoc isfinite_double_#t~mem16, isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, isfinite_double_~x, isfinite_double_~hx~1; [L160-L168] isfinite_double_~x := isfinite_double_#in~x; [L161] havoc isfinite_double_~hx~1; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L163] call isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset := #Ultimate.alloc(8); [L164] call write~real(isfinite_double_~x, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8); [L165] call isfinite_double_#t~mem16 := read~int(isfinite_double_~#gh_u~0.base, 4 + isfinite_double_~#gh_u~0.offset, 4); [L165] isfinite_double_~hx~1 := (if isfinite_double_#t~mem16 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem16 % 4294967296 % 4294967296 else isfinite_double_#t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] call write~real(isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8); [L165] havoc isfinite_double_#t~mem16; [L165] havoc isfinite_double_#t~union17; [L163] call ULTIMATE.dealloc(isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset); [L163] havoc isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L167] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] main_#t~ret19 := isfinite_double_#res; [L180] assume -2147483648 <= main_#t~ret19 && main_#t~ret19 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_#t~ret19=-2147483648, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L180-L189] assume 0 != main_#t~ret19; [L180] havoc main_#t~ret19; [L182] fmod_double_#in~x, fmod_double_#in~y := main_~x~0, main_~y~0; [L182] havoc fmod_double_#res; [L182] havoc fmod_double_#t~mem0, fmod_double_#t~union1, fmod_double_#t~mem2, fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, fmod_double_#t~mem4, fmod_double_#t~union5, fmod_double_#t~mem6, fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, fmod_double_#t~mem8, fmod_double_#t~mem10, fmod_double_#t~post9, fmod_double_#t~mem11, fmod_double_#t~mem12, fmod_double_#t~union13.lsw, fmod_double_#t~union13.msw, fmod_double_~#iw_u~0.base, fmod_double_~#iw_u~0.offset, fmod_double_#t~mem14, fmod_double_#t~union15.lsw, fmod_double_#t~union15.msw, fmod_double_~#iw_u~1.base, fmod_double_~#iw_u~1.offset, fmod_double_~x, fmod_double_~y, fmod_double_~n~0, fmod_double_~hx~0, fmod_double_~hy~0, fmod_double_~hz~0, fmod_double_~ix~0, fmod_double_~iy~0, fmod_double_~sx~0, fmod_double_~i~0, fmod_double_~lx~0, fmod_double_~ly~0, fmod_double_~lz~0; [L20-L158] fmod_double_~x := fmod_double_#in~x; [L20-L158] fmod_double_~y := fmod_double_#in~y; [L21] havoc fmod_double_~n~0; [L21] havoc fmod_double_~hx~0; [L21] havoc fmod_double_~hy~0; [L21] havoc fmod_double_~hz~0; [L21] havoc fmod_double_~ix~0; [L21] havoc fmod_double_~iy~0; [L21] havoc fmod_double_~sx~0; [L21] havoc fmod_double_~i~0; [L22] havoc fmod_double_~lx~0; [L22] havoc fmod_double_~ly~0; [L22] havoc fmod_double_~lz~0; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L25] call fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset := #Ultimate.alloc(8); [L26] call write~real(fmod_double_~x, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L27] call fmod_double_#t~mem0 := read~int(fmod_double_~#ew_u~0.base, 4 + fmod_double_~#ew_u~0.offset, 4); [L27] fmod_double_~hx~0 := (if fmod_double_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem0 % 4294967296 % 4294967296 else fmod_double_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] call write~real(fmod_double_#t~union1, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L27] havoc fmod_double_#t~mem0; [L27] havoc fmod_double_#t~union1; [L28] call fmod_double_#t~mem2 := read~int(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 4); [L28] fmod_double_~lx~0 := fmod_double_#t~mem2; [L28] call write~real(fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L28] havoc fmod_double_#t~union3; [L28] havoc fmod_double_#t~mem2; [L25] call ULTIMATE.dealloc(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset); [L25] havoc fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L31] call fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset := #Ultimate.alloc(8); [L32] call write~real(fmod_double_~y, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L33] call fmod_double_#t~mem4 := read~int(fmod_double_~#ew_u~1.base, 4 + fmod_double_~#ew_u~1.offset, 4); [L33] fmod_double_~hy~0 := (if fmod_double_#t~mem4 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem4 % 4294967296 % 4294967296 else fmod_double_#t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] call write~real(fmod_double_#t~union5, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L33] havoc fmod_double_#t~mem4; [L33] havoc fmod_double_#t~union5; [L34] call fmod_double_#t~mem6 := read~int(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 4); [L34] fmod_double_~ly~0 := fmod_double_#t~mem6; [L34] call write~real(fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L34] havoc fmod_double_#t~mem6; [L34] havoc fmod_double_#t~union7; [L31] call ULTIMATE.dealloc(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset); [L31] havoc fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~hy~0=8404, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L36] fmod_double_~sx~0 := (if ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] fmod_double_~hx~0 := ~bitwiseXor(fmod_double_~hx~0, fmod_double_~sx~0); [L38] fmod_double_~hy~0 := ~bitwiseAnd(fmod_double_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L40-L42] assume (0 == ~bitwiseOr(fmod_double_~hy~0, fmod_double_~ly~0) % 4294967296 || fmod_double_~hx~0 >= 2146435072) || ~bitwiseOr(fmod_double_~hy~0, ~bitwiseOr(fmod_double_~ly~0, -fmod_double_~ly~0) / 2147483648) % 4294967296 > 2146435072; [L42] fmod_double_#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y), ~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y)); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L182] main_#t~ret20 := fmod_double_#res; [L182] main_~res~0 := main_#t~ret20; [L182] havoc main_#t~ret20; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L185-L188] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, main_~x~0); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(16); [L15-L18] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 8); [L15-L18] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 8 + ~#Zero_fmod~0.offset, 8); [?] havoc main_#res; [?] havoc main_#t~nondet18, main_#t~ret19, main_#t~ret20, main_~res~0, main_~y~0, main_~x~0; [L177] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] main_~x~0 := main_#t~nondet18; [L178] havoc main_#t~nondet18; [L180] isfinite_double_#in~x := main_~x~0; [L180] havoc isfinite_double_#res; [L180] havoc isfinite_double_#t~mem16, isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, isfinite_double_~x, isfinite_double_~hx~1; [L160-L168] isfinite_double_~x := isfinite_double_#in~x; [L161] havoc isfinite_double_~hx~1; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L163] call isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset := #Ultimate.alloc(8); [L164] call write~real(isfinite_double_~x, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8); [L165] call isfinite_double_#t~mem16 := read~int(isfinite_double_~#gh_u~0.base, 4 + isfinite_double_~#gh_u~0.offset, 4); [L165] isfinite_double_~hx~1 := (if isfinite_double_#t~mem16 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem16 % 4294967296 % 4294967296 else isfinite_double_#t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] call write~real(isfinite_double_#t~union17, isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset, 8); [L165] havoc isfinite_double_#t~mem16; [L165] havoc isfinite_double_#t~union17; [L163] call ULTIMATE.dealloc(isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset); [L163] havoc isfinite_double_~#gh_u~0.base, isfinite_double_~#gh_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L167] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] main_#t~ret19 := isfinite_double_#res; [L180] assume -2147483648 <= main_#t~ret19 && main_#t~ret19 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_#t~ret19=-2147483648, main_~x~0=2.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L180-L189] assume 0 != main_#t~ret19; [L180] havoc main_#t~ret19; [L182] fmod_double_#in~x, fmod_double_#in~y := main_~x~0, main_~y~0; [L182] havoc fmod_double_#res; [L182] havoc fmod_double_#t~mem0, fmod_double_#t~union1, fmod_double_#t~mem2, fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, fmod_double_#t~mem4, fmod_double_#t~union5, fmod_double_#t~mem6, fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, fmod_double_#t~mem8, fmod_double_#t~mem10, fmod_double_#t~post9, fmod_double_#t~mem11, fmod_double_#t~mem12, fmod_double_#t~union13.lsw, fmod_double_#t~union13.msw, fmod_double_~#iw_u~0.base, fmod_double_~#iw_u~0.offset, fmod_double_#t~mem14, fmod_double_#t~union15.lsw, fmod_double_#t~union15.msw, fmod_double_~#iw_u~1.base, fmod_double_~#iw_u~1.offset, fmod_double_~x, fmod_double_~y, fmod_double_~n~0, fmod_double_~hx~0, fmod_double_~hy~0, fmod_double_~hz~0, fmod_double_~ix~0, fmod_double_~iy~0, fmod_double_~sx~0, fmod_double_~i~0, fmod_double_~lx~0, fmod_double_~ly~0, fmod_double_~lz~0; [L20-L158] fmod_double_~x := fmod_double_#in~x; [L20-L158] fmod_double_~y := fmod_double_#in~y; [L21] havoc fmod_double_~n~0; [L21] havoc fmod_double_~hx~0; [L21] havoc fmod_double_~hy~0; [L21] havoc fmod_double_~hz~0; [L21] havoc fmod_double_~ix~0; [L21] havoc fmod_double_~iy~0; [L21] havoc fmod_double_~sx~0; [L21] havoc fmod_double_~i~0; [L22] havoc fmod_double_~lx~0; [L22] havoc fmod_double_~ly~0; [L22] havoc fmod_double_~lz~0; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L25] call fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset := #Ultimate.alloc(8); [L26] call write~real(fmod_double_~x, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L27] call fmod_double_#t~mem0 := read~int(fmod_double_~#ew_u~0.base, 4 + fmod_double_~#ew_u~0.offset, 4); [L27] fmod_double_~hx~0 := (if fmod_double_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem0 % 4294967296 % 4294967296 else fmod_double_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] call write~real(fmod_double_#t~union1, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L27] havoc fmod_double_#t~mem0; [L27] havoc fmod_double_#t~union1; [L28] call fmod_double_#t~mem2 := read~int(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 4); [L28] fmod_double_~lx~0 := fmod_double_#t~mem2; [L28] call write~real(fmod_double_#t~union3, fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset, 8); [L28] havoc fmod_double_#t~union3; [L28] havoc fmod_double_#t~mem2; [L25] call ULTIMATE.dealloc(fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset); [L25] havoc fmod_double_~#ew_u~0.base, fmod_double_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L31] call fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset := #Ultimate.alloc(8); [L32] call write~real(fmod_double_~y, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L33] call fmod_double_#t~mem4 := read~int(fmod_double_~#ew_u~1.base, 4 + fmod_double_~#ew_u~1.offset, 4); [L33] fmod_double_~hy~0 := (if fmod_double_#t~mem4 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem4 % 4294967296 % 4294967296 else fmod_double_#t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] call write~real(fmod_double_#t~union5, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L33] havoc fmod_double_#t~mem4; [L33] havoc fmod_double_#t~union5; [L34] call fmod_double_#t~mem6 := read~int(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 4); [L34] fmod_double_~ly~0 := fmod_double_#t~mem6; [L34] call write~real(fmod_double_#t~union7, fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset, 8); [L34] havoc fmod_double_#t~mem6; [L34] havoc fmod_double_#t~union7; [L31] call ULTIMATE.dealloc(fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset); [L31] havoc fmod_double_~#ew_u~1.base, fmod_double_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~hy~0=8404, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L36] fmod_double_~sx~0 := (if ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] fmod_double_~hx~0 := ~bitwiseXor(fmod_double_~hx~0, fmod_double_~sx~0); [L38] fmod_double_~hy~0 := ~bitwiseAnd(fmod_double_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L40-L42] assume (0 == ~bitwiseOr(fmod_double_~hy~0, fmod_double_~ly~0) % 4294967296 || fmod_double_~hx~0 >= 2146435072) || ~bitwiseOr(fmod_double_~hy~0, ~bitwiseOr(fmod_double_~ly~0, -fmod_double_~ly~0) / 2147483648) % 4294967296 > 2146435072; [L42] fmod_double_#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y), ~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y)); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L182] main_#t~ret20 := fmod_double_#res; [L182] main_~res~0 := main_#t~ret20; [L182] havoc main_#t~ret20; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L185-L188] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, main_~x~0); VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL.base=0, #NULL.offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L15-L18] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L15-L18] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); [?] havoc main_#res; [?] havoc main_#t~nondet18, main_#t~ret19, main_#t~ret20, main_~res~0, main_~y~0, main_~x~0; [L177] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] main_~x~0 := main_#t~nondet18; [L178] havoc main_#t~nondet18; [L180] isfinite_double_#in~x := main_~x~0; [L180] havoc isfinite_double_#res; [L180] havoc isfinite_double_#t~mem16, isfinite_double_#t~union17, isfinite_double_~#gh_u~0, isfinite_double_~x, isfinite_double_~hx~1; [L160-L168] isfinite_double_~x := isfinite_double_#in~x; [L161] havoc isfinite_double_~hx~1; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L163] FCALL call isfinite_double_~#gh_u~0 := #Ultimate.alloc(8); [L164] FCALL call write~real(isfinite_double_~x, { base: isfinite_double_~#gh_u~0!base, offset: isfinite_double_~#gh_u~0!offset }, 8); [L165] FCALL call isfinite_double_#t~mem16 := read~int({ base: isfinite_double_~#gh_u~0!base, offset: 4 + isfinite_double_~#gh_u~0!offset }, 4); [L165] isfinite_double_~hx~1 := (if isfinite_double_#t~mem16 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem16 % 4294967296 % 4294967296 else isfinite_double_#t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] FCALL call write~real(isfinite_double_#t~union17, { base: isfinite_double_~#gh_u~0!base, offset: isfinite_double_~#gh_u~0!offset }, 8); [L165] havoc isfinite_double_#t~mem16; [L165] havoc isfinite_double_#t~union17; [L163] FCALL call ULTIMATE.dealloc(isfinite_double_~#gh_u~0); [L163] havoc isfinite_double_~#gh_u~0; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L167] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] main_#t~ret19 := isfinite_double_#res; [L180] assume -2147483648 <= main_#t~ret19 && main_#t~ret19 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_#t~ret19=-2147483648, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L180-L189] COND TRUE 0 != main_#t~ret19 [L180] havoc main_#t~ret19; [L182] fmod_double_#in~x, fmod_double_#in~y := main_~x~0, main_~y~0; [L182] havoc fmod_double_#res; [L182] havoc fmod_double_#t~mem0, fmod_double_#t~union1, fmod_double_#t~mem2, fmod_double_#t~union3, fmod_double_~#ew_u~0, fmod_double_#t~mem4, fmod_double_#t~union5, fmod_double_#t~mem6, fmod_double_#t~union7, fmod_double_~#ew_u~1, fmod_double_#t~mem8, fmod_double_#t~mem10, fmod_double_#t~post9, fmod_double_#t~mem11, fmod_double_#t~mem12, fmod_double_#t~union13, fmod_double_~#iw_u~0, fmod_double_#t~mem14, fmod_double_#t~union15, fmod_double_~#iw_u~1, fmod_double_~x, fmod_double_~y, fmod_double_~n~0, fmod_double_~hx~0, fmod_double_~hy~0, fmod_double_~hz~0, fmod_double_~ix~0, fmod_double_~iy~0, fmod_double_~sx~0, fmod_double_~i~0, fmod_double_~lx~0, fmod_double_~ly~0, fmod_double_~lz~0; [L20-L158] fmod_double_~x := fmod_double_#in~x; [L20-L158] fmod_double_~y := fmod_double_#in~y; [L21] havoc fmod_double_~n~0; [L21] havoc fmod_double_~hx~0; [L21] havoc fmod_double_~hy~0; [L21] havoc fmod_double_~hz~0; [L21] havoc fmod_double_~ix~0; [L21] havoc fmod_double_~iy~0; [L21] havoc fmod_double_~sx~0; [L21] havoc fmod_double_~i~0; [L22] havoc fmod_double_~lx~0; [L22] havoc fmod_double_~ly~0; [L22] havoc fmod_double_~lz~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L25] FCALL call fmod_double_~#ew_u~0 := #Ultimate.alloc(8); [L26] FCALL call write~real(fmod_double_~x, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L27] FCALL call fmod_double_#t~mem0 := read~int({ base: fmod_double_~#ew_u~0!base, offset: 4 + fmod_double_~#ew_u~0!offset }, 4); [L27] fmod_double_~hx~0 := (if fmod_double_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem0 % 4294967296 % 4294967296 else fmod_double_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] FCALL call write~real(fmod_double_#t~union1, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L27] havoc fmod_double_#t~mem0; [L27] havoc fmod_double_#t~union1; [L28] FCALL call fmod_double_#t~mem2 := read~int({ base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 4); [L28] fmod_double_~lx~0 := fmod_double_#t~mem2; [L28] FCALL call write~real(fmod_double_#t~union3, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L28] havoc fmod_double_#t~union3; [L28] havoc fmod_double_#t~mem2; [L25] FCALL call ULTIMATE.dealloc(fmod_double_~#ew_u~0); [L25] havoc fmod_double_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L31] FCALL call fmod_double_~#ew_u~1 := #Ultimate.alloc(8); [L32] FCALL call write~real(fmod_double_~y, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L33] FCALL call fmod_double_#t~mem4 := read~int({ base: fmod_double_~#ew_u~1!base, offset: 4 + fmod_double_~#ew_u~1!offset }, 4); [L33] fmod_double_~hy~0 := (if fmod_double_#t~mem4 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem4 % 4294967296 % 4294967296 else fmod_double_#t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] FCALL call write~real(fmod_double_#t~union5, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L33] havoc fmod_double_#t~mem4; [L33] havoc fmod_double_#t~union5; [L34] FCALL call fmod_double_#t~mem6 := read~int({ base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 4); [L34] fmod_double_~ly~0 := fmod_double_#t~mem6; [L34] FCALL call write~real(fmod_double_#t~union7, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L34] havoc fmod_double_#t~mem6; [L34] havoc fmod_double_#t~union7; [L31] FCALL call ULTIMATE.dealloc(fmod_double_~#ew_u~1); [L31] havoc fmod_double_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~hy~0=8404, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L36] fmod_double_~sx~0 := (if ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] fmod_double_~hx~0 := ~bitwiseXor(fmod_double_~hx~0, fmod_double_~sx~0); [L38] fmod_double_~hy~0 := ~bitwiseAnd(fmod_double_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L40-L41] COND TRUE (0 == ~bitwiseOr(fmod_double_~hy~0, fmod_double_~ly~0) % 4294967296 || fmod_double_~hx~0 >= 2146435072) || ~bitwiseOr(fmod_double_~hy~0, ~bitwiseOr(fmod_double_~ly~0, -fmod_double_~ly~0) / 2147483648) % 4294967296 > 2146435072 [L42] fmod_double_#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y), ~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y)); VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L182] main_#t~ret20 := fmod_double_#res; [L182] main_~res~0 := main_#t~ret20; [L182] havoc main_#t~ret20; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L185] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, main_~x~0) VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L15-L18] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L15-L18] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); [?] havoc main_#res; [?] havoc main_#t~nondet18, main_#t~ret19, main_#t~ret20, main_~res~0, main_~y~0, main_~x~0; [L177] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] main_~x~0 := main_#t~nondet18; [L178] havoc main_#t~nondet18; [L180] isfinite_double_#in~x := main_~x~0; [L180] havoc isfinite_double_#res; [L180] havoc isfinite_double_#t~mem16, isfinite_double_#t~union17, isfinite_double_~#gh_u~0, isfinite_double_~x, isfinite_double_~hx~1; [L160-L168] isfinite_double_~x := isfinite_double_#in~x; [L161] havoc isfinite_double_~hx~1; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L163] FCALL call isfinite_double_~#gh_u~0 := #Ultimate.alloc(8); [L164] FCALL call write~real(isfinite_double_~x, { base: isfinite_double_~#gh_u~0!base, offset: isfinite_double_~#gh_u~0!offset }, 8); [L165] FCALL call isfinite_double_#t~mem16 := read~int({ base: isfinite_double_~#gh_u~0!base, offset: 4 + isfinite_double_~#gh_u~0!offset }, 4); [L165] isfinite_double_~hx~1 := (if isfinite_double_#t~mem16 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem16 % 4294967296 % 4294967296 else isfinite_double_#t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] FCALL call write~real(isfinite_double_#t~union17, { base: isfinite_double_~#gh_u~0!base, offset: isfinite_double_~#gh_u~0!offset }, 8); [L165] havoc isfinite_double_#t~mem16; [L165] havoc isfinite_double_#t~union17; [L163] FCALL call ULTIMATE.dealloc(isfinite_double_~#gh_u~0); [L163] havoc isfinite_double_~#gh_u~0; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L167] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] main_#t~ret19 := isfinite_double_#res; [L180] assume -2147483648 <= main_#t~ret19 && main_#t~ret19 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_#t~ret19=-2147483648, main_~x~0=2.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L180-L189] COND TRUE 0 != main_#t~ret19 [L180] havoc main_#t~ret19; [L182] fmod_double_#in~x, fmod_double_#in~y := main_~x~0, main_~y~0; [L182] havoc fmod_double_#res; [L182] havoc fmod_double_#t~mem0, fmod_double_#t~union1, fmod_double_#t~mem2, fmod_double_#t~union3, fmod_double_~#ew_u~0, fmod_double_#t~mem4, fmod_double_#t~union5, fmod_double_#t~mem6, fmod_double_#t~union7, fmod_double_~#ew_u~1, fmod_double_#t~mem8, fmod_double_#t~mem10, fmod_double_#t~post9, fmod_double_#t~mem11, fmod_double_#t~mem12, fmod_double_#t~union13, fmod_double_~#iw_u~0, fmod_double_#t~mem14, fmod_double_#t~union15, fmod_double_~#iw_u~1, fmod_double_~x, fmod_double_~y, fmod_double_~n~0, fmod_double_~hx~0, fmod_double_~hy~0, fmod_double_~hz~0, fmod_double_~ix~0, fmod_double_~iy~0, fmod_double_~sx~0, fmod_double_~i~0, fmod_double_~lx~0, fmod_double_~ly~0, fmod_double_~lz~0; [L20-L158] fmod_double_~x := fmod_double_#in~x; [L20-L158] fmod_double_~y := fmod_double_#in~y; [L21] havoc fmod_double_~n~0; [L21] havoc fmod_double_~hx~0; [L21] havoc fmod_double_~hy~0; [L21] havoc fmod_double_~hz~0; [L21] havoc fmod_double_~ix~0; [L21] havoc fmod_double_~iy~0; [L21] havoc fmod_double_~sx~0; [L21] havoc fmod_double_~i~0; [L22] havoc fmod_double_~lx~0; [L22] havoc fmod_double_~ly~0; [L22] havoc fmod_double_~lz~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L25] FCALL call fmod_double_~#ew_u~0 := #Ultimate.alloc(8); [L26] FCALL call write~real(fmod_double_~x, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L27] FCALL call fmod_double_#t~mem0 := read~int({ base: fmod_double_~#ew_u~0!base, offset: 4 + fmod_double_~#ew_u~0!offset }, 4); [L27] fmod_double_~hx~0 := (if fmod_double_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem0 % 4294967296 % 4294967296 else fmod_double_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] FCALL call write~real(fmod_double_#t~union1, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L27] havoc fmod_double_#t~mem0; [L27] havoc fmod_double_#t~union1; [L28] FCALL call fmod_double_#t~mem2 := read~int({ base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 4); [L28] fmod_double_~lx~0 := fmod_double_#t~mem2; [L28] FCALL call write~real(fmod_double_#t~union3, { base: fmod_double_~#ew_u~0!base, offset: fmod_double_~#ew_u~0!offset }, 8); [L28] havoc fmod_double_#t~union3; [L28] havoc fmod_double_#t~mem2; [L25] FCALL call ULTIMATE.dealloc(fmod_double_~#ew_u~0); [L25] havoc fmod_double_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L31] FCALL call fmod_double_~#ew_u~1 := #Ultimate.alloc(8); [L32] FCALL call write~real(fmod_double_~y, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L33] FCALL call fmod_double_#t~mem4 := read~int({ base: fmod_double_~#ew_u~1!base, offset: 4 + fmod_double_~#ew_u~1!offset }, 4); [L33] fmod_double_~hy~0 := (if fmod_double_#t~mem4 % 4294967296 % 4294967296 <= 2147483647 then fmod_double_#t~mem4 % 4294967296 % 4294967296 else fmod_double_#t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] FCALL call write~real(fmod_double_#t~union5, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L33] havoc fmod_double_#t~mem4; [L33] havoc fmod_double_#t~union5; [L34] FCALL call fmod_double_#t~mem6 := read~int({ base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 4); [L34] fmod_double_~ly~0 := fmod_double_#t~mem6; [L34] FCALL call write~real(fmod_double_#t~union7, { base: fmod_double_~#ew_u~1!base, offset: fmod_double_~#ew_u~1!offset }, 8); [L34] havoc fmod_double_#t~mem6; [L34] havoc fmod_double_#t~union7; [L31] FCALL call ULTIMATE.dealloc(fmod_double_~#ew_u~1); [L31] havoc fmod_double_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~hy~0=8404, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L36] fmod_double_~sx~0 := (if ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_double_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] fmod_double_~hx~0 := ~bitwiseXor(fmod_double_~hx~0, fmod_double_~sx~0); [L38] fmod_double_~hy~0 := ~bitwiseAnd(fmod_double_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L40-L41] COND TRUE (0 == ~bitwiseOr(fmod_double_~hy~0, fmod_double_~ly~0) % 4294967296 || fmod_double_~hx~0 >= 2146435072) || ~bitwiseOr(fmod_double_~hy~0, ~bitwiseOr(fmod_double_~ly~0, -fmod_double_~ly~0) / 2147483648) % 4294967296 > 2146435072 [L42] fmod_double_#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y), ~someBinaryArithmeticDOUBLEoperation(fmod_double_~x, fmod_double_~y)); VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L182] main_#t~ret20 := fmod_double_#res; [L182] main_~res~0 := main_#t~ret20; [L182] havoc main_#t~ret20; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L185] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, main_~x~0) VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL!base=0, #NULL!offset=0, fmod_double_#in~x=2.0, fmod_double_#in~y=12.0, fmod_double_#res=13.0, fmod_double_~hx~0=0, fmod_double_~lx~0=10, fmod_double_~ly~0=13, fmod_double_~sx~0=4335, fmod_double_~x=2.0, fmod_double_~y=12.0, isfinite_double_#in~x=2.0, isfinite_double_#res=-2147483648, isfinite_double_~hx~1=8404, isfinite_double_~x=2.0, main_~res~0=13.0, main_~x~0=2.0, main_~y~0=12.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L15-L18] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L15-L18] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); [L177] ~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] ~x~0 := #t~nondet18; [L178] havoc #t~nondet18; [L160-L168] ~x := #in~x; [L161] havoc ~hx~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L163] FCALL call ~#gh_u~0 := #Ultimate.alloc(8); [L164] FCALL call write~real(~x, { base: ~#gh_u~0!base, offset: ~#gh_u~0!offset }, 8); [L165] FCALL call #t~mem16 := read~int({ base: ~#gh_u~0!base, offset: 4 + ~#gh_u~0!offset }, 4); [L165] ~hx~1 := (if #t~mem16 % 4294967296 % 4294967296 <= 2147483647 then #t~mem16 % 4294967296 % 4294967296 else #t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] FCALL call write~real(#t~union17, { base: ~#gh_u~0!base, offset: ~#gh_u~0!offset }, 8); [L165] havoc #t~mem16; [L165] havoc #t~union17; [L163] FCALL call ULTIMATE.dealloc(~#gh_u~0); [L163] havoc ~#gh_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L167] #res := (if (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] assume -2147483648 <= #t~ret19 && #t~ret19 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L180-L189] COND TRUE 0 != #t~ret19 [L180] havoc #t~ret19; [L20-L158] ~x := #in~x; [L20-L158] ~y := #in~y; [L21] havoc ~n~0; [L21] havoc ~hx~0; [L21] havoc ~hy~0; [L21] havoc ~hz~0; [L21] havoc ~ix~0; [L21] havoc ~iy~0; [L21] havoc ~sx~0; [L21] havoc ~i~0; [L22] havoc ~lx~0; [L22] havoc ~ly~0; [L22] havoc ~lz~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L25] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L26] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L27] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L27] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L27] havoc #t~mem0; [L27] havoc #t~union1; [L28] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L28] ~lx~0 := #t~mem2; [L28] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L25] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L25] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L31] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L32] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L33] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L33] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L33] havoc #t~mem4; [L33] havoc #t~union5; [L34] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L34] ~ly~0 := #t~mem6; [L34] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L34] havoc #t~mem6; [L34] havoc #t~union7; [L31] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L31] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L36] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L38] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L40-L41] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L42] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L182] ~res~0 := #t~ret20; [L182] havoc #t~ret20; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L185] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~x~0) VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L15-L18] ~one_fmod~0 := 1.0; [L15-L18] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L15-L18] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L15-L18] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); [L177] ~y~0 := ~someBinaryArithmeticDOUBLEoperation(~someUnaryDOUBLEoperation(1.0), 0.0); [L178] ~x~0 := #t~nondet18; [L178] havoc #t~nondet18; [L160-L168] ~x := #in~x; [L161] havoc ~hx~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L163] FCALL call ~#gh_u~0 := #Ultimate.alloc(8); [L164] FCALL call write~real(~x, { base: ~#gh_u~0!base, offset: ~#gh_u~0!offset }, 8); [L165] FCALL call #t~mem16 := read~int({ base: ~#gh_u~0!base, offset: 4 + ~#gh_u~0!offset }, 4); [L165] ~hx~1 := (if #t~mem16 % 4294967296 % 4294967296 <= 2147483647 then #t~mem16 % 4294967296 % 4294967296 else #t~mem16 % 4294967296 % 4294967296 - 4294967296); [L165] FCALL call write~real(#t~union17, { base: ~#gh_u~0!base, offset: ~#gh_u~0!offset }, 8); [L165] havoc #t~mem16; [L165] havoc #t~union17; [L163] FCALL call ULTIMATE.dealloc(~#gh_u~0); [L163] havoc ~#gh_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L167] #res := (if (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(~hx~1, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L180] assume -2147483648 <= #t~ret19 && #t~ret19 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L180-L189] COND TRUE 0 != #t~ret19 [L180] havoc #t~ret19; [L20-L158] ~x := #in~x; [L20-L158] ~y := #in~y; [L21] havoc ~n~0; [L21] havoc ~hx~0; [L21] havoc ~hy~0; [L21] havoc ~hz~0; [L21] havoc ~ix~0; [L21] havoc ~iy~0; [L21] havoc ~sx~0; [L21] havoc ~i~0; [L22] havoc ~lx~0; [L22] havoc ~ly~0; [L22] havoc ~lz~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L25] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L26] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L27] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L27] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L27] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L27] havoc #t~mem0; [L27] havoc #t~union1; [L28] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L28] ~lx~0 := #t~mem2; [L28] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L25] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L25] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L31] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L32] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L33] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L33] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L33] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L33] havoc #t~mem4; [L33] havoc #t~union5; [L34] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L34] ~ly~0 := #t~mem6; [L34] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L34] havoc #t~mem6; [L34] havoc #t~union7; [L31] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L31] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L36] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L37] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L38] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L40-L41] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L42] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L182] ~res~0 := #t~ret20; [L182] havoc #t~ret20; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L185] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~x~0) VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L186] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L15-L18] static const double one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; [L177] double y = -1.0 / 0.0; [L178] double x = __VERIFIER_nondet_double(); [L161] __int32_t hx; VAL [one_fmod=1, Zero_fmod={2:0}] [L163] ieee_double_shape_type gh_u; [L164] gh_u.value = (x) [L165] EXPR gh_u.parts.msw [L165] (hx) = gh_u.parts.msw [L167] return (int)((__uint32_t)((hx & 0x7fffffff) - 0x7ff00000) >> 31); [L180] COND TRUE isfinite_double(x) [L21] __int32_t n, hx, hy, hz, ix, iy, sx, i; [L22] __uint32_t lx, ly, lz; VAL [one_fmod=1, Zero_fmod={2:0}] [L25] ieee_double_shape_type ew_u; [L26] ew_u.value = (x) [L27] EXPR ew_u.parts.msw [L27] (hx) = ew_u.parts.msw [L28] EXPR ew_u.parts.lsw [L28] (lx) = ew_u.parts.lsw [L31] ieee_double_shape_type ew_u; [L32] ew_u.value = (y) [L33] EXPR ew_u.parts.msw [L33] (hy) = ew_u.parts.msw [L34] EXPR ew_u.parts.lsw [L34] (ly) = ew_u.parts.lsw [L36] sx = hx & 0x80000000 [L37] hx ^= sx [L38] hy &= 0x7fffffff VAL [one_fmod=1, Zero_fmod={2:0}] [L40-L41] COND TRUE (hy | ly) == 0 || (hx >= 0x7ff00000) || ((hy | ((ly | -ly) >> 31)) > 0x7ff00000) [L42] return (x * y) / (x * y); VAL [one_fmod=1, Zero_fmod={2:0}] [L182] double res = fmod_double(x, y); [L185] COND TRUE res != x VAL [one_fmod=1, Zero_fmod={2:0}] [L186] __VERIFIER_error() VAL [one_fmod=1, Zero_fmod={2:0}] ----- [2018-11-23 06:56:12,572 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 06:56:12 ImpRootNode [2018-11-23 06:56:12,572 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 06:56:12,573 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 06:56:12,573 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 06:56:12,573 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 06:56:12,574 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:12" (3/4) ... [2018-11-23 06:56:12,577 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 06:56:12,577 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 06:56:12,577 INFO L168 Benchmark]: Toolchain (without parser) took 1216.75 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 163.1 MB). Free memory was 958.1 MB in the beginning and 1.1 GB in the end (delta: -98.1 MB). Peak memory consumption was 64.9 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,579 INFO L168 Benchmark]: CDTParser took 0.11 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 06:56:12,579 INFO L168 Benchmark]: CACSL2BoogieTranslator took 264.12 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 163.1 MB). Free memory was 958.1 MB in the beginning and 1.2 GB in the end (delta: -202.6 MB). Peak memory consumption was 31.5 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,580 INFO L168 Benchmark]: Boogie Procedure Inliner took 30.09 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,580 INFO L168 Benchmark]: Boogie Preprocessor took 23.68 ms. Allocated memory is still 1.2 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 06:56:12,581 INFO L168 Benchmark]: RCFGBuilder took 496.22 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 58.9 MB). Peak memory consumption was 58.9 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,582 INFO L168 Benchmark]: CodeCheck took 395.93 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.4 MB). Peak memory consumption was 35.4 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,582 INFO L168 Benchmark]: Witness Printer took 4.08 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 3.4 MB). Peak memory consumption was 3.4 MB. Max. memory is 11.5 GB. [2018-11-23 06:56:12,585 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 1 procedures, 60 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 22 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 82 GetRequests, 82 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, traceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 25 NumberOfCodeBlocks, 25 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 10 ConstructedInterpolants, 0 QuantifiedInterpolants, 100 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - UnprovableResult [Line: 186]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of bitwiseOr at line 41, overapproximation of someUnaryDOUBLEoperation at line 17, overapproximation of someBinaryArithmeticDOUBLEoperation at line 42, overapproximation of bitwiseAnd at line 36, overapproximation of someBinaryDOUBLEComparisonOperation at line 185, overapproximation of bitwiseXor at line 37. Possible FailurePath: [L15-L18] static const double one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; [L177] double y = -1.0 / 0.0; [L178] double x = __VERIFIER_nondet_double(); [L161] __int32_t hx; VAL [one_fmod=1, Zero_fmod={2:0}] [L163] ieee_double_shape_type gh_u; [L164] gh_u.value = (x) [L165] EXPR gh_u.parts.msw [L165] (hx) = gh_u.parts.msw [L167] return (int)((__uint32_t)((hx & 0x7fffffff) - 0x7ff00000) >> 31); [L180] COND TRUE isfinite_double(x) [L21] __int32_t n, hx, hy, hz, ix, iy, sx, i; [L22] __uint32_t lx, ly, lz; VAL [one_fmod=1, Zero_fmod={2:0}] [L25] ieee_double_shape_type ew_u; [L26] ew_u.value = (x) [L27] EXPR ew_u.parts.msw [L27] (hx) = ew_u.parts.msw [L28] EXPR ew_u.parts.lsw [L28] (lx) = ew_u.parts.lsw [L31] ieee_double_shape_type ew_u; [L32] ew_u.value = (y) [L33] EXPR ew_u.parts.msw [L33] (hy) = ew_u.parts.msw [L34] EXPR ew_u.parts.lsw [L34] (ly) = ew_u.parts.lsw [L36] sx = hx & 0x80000000 [L37] hx ^= sx [L38] hy &= 0x7fffffff VAL [one_fmod=1, Zero_fmod={2:0}] [L40-L41] COND TRUE (hy | ly) == 0 || (hx >= 0x7ff00000) || ((hy | ((ly | -ly) >> 31)) > 0x7ff00000) [L42] return (x * y) / (x * y); VAL [one_fmod=1, Zero_fmod={2:0}] [L182] double res = fmod_double(x, y); [L185] COND TRUE res != x VAL [one_fmod=1, Zero_fmod={2:0}] [L186] __VERIFIER_error() VAL [one_fmod=1, Zero_fmod={2:0}] * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 264.12 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 163.1 MB). Free memory was 958.1 MB in the beginning and 1.2 GB in the end (delta: -202.6 MB). Peak memory consumption was 31.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 30.09 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 23.68 ms. Allocated memory is still 1.2 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 496.22 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 58.9 MB). Peak memory consumption was 58.9 MB. Max. memory is 11.5 GB. * CodeCheck took 395.93 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.4 MB). Peak memory consumption was 35.4 MB. Max. memory is 11.5 GB. * Witness Printer took 4.08 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 3.4 MB). Peak memory consumption was 3.4 MB. Max. memory is 11.5 GB. RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request... ### Bit-precise run ### This is Ultimate 0.1.23-aa41828 [2018-11-23 06:56:13,998 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 06:56:13,999 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 06:56:14,006 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 06:56:14,006 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 06:56:14,007 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 06:56:14,008 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 06:56:14,009 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 06:56:14,010 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 06:56:14,010 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 06:56:14,011 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 06:56:14,011 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 06:56:14,012 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 06:56:14,012 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 06:56:14,013 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 06:56:14,014 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 06:56:14,014 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 06:56:14,015 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 06:56:14,017 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 06:56:14,018 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 06:56:14,018 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 06:56:14,019 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 06:56:14,021 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 06:56:14,021 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 06:56:14,021 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 06:56:14,022 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 06:56:14,022 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 06:56:14,023 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 06:56:14,023 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 06:56:14,024 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 06:56:14,024 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 06:56:14,025 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 06:56:14,025 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 06:56:14,025 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 06:56:14,026 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 06:56:14,026 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 06:56:14,027 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2018-11-23 06:56:14,037 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 06:56:14,037 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 06:56:14,038 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 06:56:14,038 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 06:56:14,038 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 06:56:14,038 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 06:56:14,039 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 06:56:14,039 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 06:56:14,040 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 06:56:14,040 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 06:56:14,041 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 06:56:14,041 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 06:56:14,041 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 06:56:14,041 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 06:56:14,041 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 06:56:14,041 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 06:56:14,041 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * Use separate solver for trace checks=false [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 06:56:14,042 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Kojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c6d763742402f5574758af03df7d1953644b4c87 [2018-11-23 06:56:14,070 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 06:56:14,078 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 06:56:14,080 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 06:56:14,080 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 06:56:14,081 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 06:56:14,081 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c [2018-11-23 06:56:14,117 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/9c9b9bbaf/2ad87a7519df4c6c8daec21308f3c43e/FLAGb21a4af05 [2018-11-23 06:56:14,471 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 06:56:14,472 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/sv-benchmarks/c/float-newlib/double_req_bl_1131b_true-unreach-call.c [2018-11-23 06:56:14,476 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/9c9b9bbaf/2ad87a7519df4c6c8daec21308f3c43e/FLAGb21a4af05 [2018-11-23 06:56:14,891 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/data/9c9b9bbaf/2ad87a7519df4c6c8daec21308f3c43e [2018-11-23 06:56:14,894 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 06:56:14,895 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 06:56:14,895 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 06:56:14,896 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 06:56:14,899 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 06:56:14,899 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 06:56:14" (1/1) ... [2018-11-23 06:56:14,901 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6aa8fa8c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:14, skipping insertion in model container [2018-11-23 06:56:14,901 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 06:56:14" (1/1) ... [2018-11-23 06:56:14,907 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 06:56:14,926 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 06:56:15,077 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 06:56:15,082 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 06:56:15,121 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 06:56:15,142 INFO L195 MainTranslator]: Completed translation [2018-11-23 06:56:15,143 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15 WrapperNode [2018-11-23 06:56:15,143 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 06:56:15,144 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 06:56:15,144 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 06:56:15,144 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 06:56:15,151 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,165 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,226 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 06:56:15,226 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 06:56:15,227 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 06:56:15,227 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 06:56:15,235 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,235 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,239 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,239 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,250 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,256 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,258 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... [2018-11-23 06:56:15,261 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 06:56:15,262 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 06:56:15,262 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 06:56:15,262 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 06:56:15,263 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 06:56:15" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 06:56:15,294 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 06:56:15,294 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 06:56:15,406 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 06:56:15,440 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 06:56:15,841 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 06:56:15,861 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 06:56:20,883 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 06:56:20,884 INFO L280 CfgBuilder]: Removed 24 assue(true) statements. [2018-11-23 06:56:20,884 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:20 BoogieIcfgContainer [2018-11-23 06:56:20,884 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 06:56:20,885 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 06:56:20,885 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 06:56:20,892 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 06:56:20,893 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:20" (1/1) ... [2018-11-23 06:56:20,900 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 06:56:20,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:56:20,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 44 states and 74 transitions. [2018-11-23 06:56:20,922 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 74 transitions. [2018-11-23 06:56:20,924 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2018-11-23 06:56:20,925 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:56:20,959 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 06:56:20,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 06:56:20,988 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 06:56:20,999 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 06:56:21,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:56:21,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 44 states and 67 transitions. [2018-11-23 06:56:21,009 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 67 transitions. [2018-11-23 06:56:21,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 06:56:21,010 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:56:21,011 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 06:56:21,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 06:56:21,833 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 06:56:21,904 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:21,905 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:21,910 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 06:56:21,946 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:21,955 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 24 [2018-11-23 06:56:21,955 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:21,971 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 06:56:21,978 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 4 [2018-11-23 06:56:21,978 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:21,982 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:21,985 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:21,996 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 06:56:21,996 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:51, output treesize:23 [2018-11-23 06:56:28,707 WARN L180 SmtUtils]: Spent 3.03 s on a formula simplification that was a NOOP. DAG size: 35 [2018-11-23 06:56:28,722 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:28,724 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:28,726 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 06:56:28,777 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 06:56:28,778 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:28,779 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 33 [2018-11-23 06:56:28,779 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:28,800 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 06:56:28,806 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 06:56:28,807 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 11 [2018-11-23 06:56:28,807 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:28,819 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:28,824 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:28,858 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 06:56:28,859 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 6 variables, input treesize:82, output treesize:54 [2018-11-23 06:56:32,112 WARN L180 SmtUtils]: Spent 3.20 s on a formula simplification that was a NOOP. DAG size: 47 [2018-11-23 06:56:35,822 WARN L180 SmtUtils]: Spent 3.62 s on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 06:56:35,831 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 06:56:43,533 WARN L180 SmtUtils]: Spent 3.19 s on a formula simplification that was a NOOP. DAG size: 36 [2018-11-23 06:56:46,860 WARN L180 SmtUtils]: Spent 3.17 s on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 06:56:58,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:56:58,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 44 states and 66 transitions. [2018-11-23 06:56:58,077 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 66 transitions. [2018-11-23 06:56:58,077 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-23 06:56:58,077 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:56:58,078 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 06:56:58,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 06:56:58,131 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 06:56:58,240 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:58,241 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 41 [2018-11-23 06:56:58,248 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 06:56:58,250 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 29 [2018-11-23 06:56:58,277 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 17 [2018-11-23 06:56:58,278 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:58,297 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:58,322 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2018-11-23 06:56:58,330 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 1 [2018-11-23 06:56:58,330 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 06:56:58,331 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:58,344 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 06:56:58,366 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 06:56:58,366 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:42, output treesize:22 [2018-11-23 06:56:59,193 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 06:57:26,870 WARN L180 SmtUtils]: Spent 4.05 s on a formula simplification that was a NOOP. DAG size: 53 [2018-11-23 06:57:36,688 WARN L180 SmtUtils]: Spent 4.02 s on a formula simplification that was a NOOP. DAG size: 54 [2018-11-23 06:57:41,335 WARN L180 SmtUtils]: Spent 4.25 s on a formula simplification that was a NOOP. DAG size: 65 [2018-11-23 06:57:46,036 WARN L180 SmtUtils]: Spent 4.03 s on a formula simplification that was a NOOP. DAG size: 66 [2018-11-23 06:57:48,008 WARN L180 SmtUtils]: Spent 403.00 ms on a formula simplification that was a NOOP. DAG size: 72 [2018-11-23 06:58:07,997 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:58:07,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 46 states and 72 transitions. [2018-11-23 06:58:07,997 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 72 transitions. [2018-11-23 06:58:07,998 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2018-11-23 06:58:07,998 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 06:58:07,999 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 06:58:08,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 06:58:08,028 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 06:58:12,706 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 06:58:19,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 06:58:19,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 18 transitions. [2018-11-23 06:58:19,052 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 18 transitions. [2018-11-23 06:58:19,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 06:58:19,052 WARN L424 CodeCheckObserver]: This Program is SAFE, Check terminated with 5 iterations. [2018-11-23 06:58:19,059 INFO L775 CodeCheckObserver]: All specifications hold 1 specifications checked. All of them hold [2018-11-23 06:58:19,606 INFO L579 CodeCheckObserver]: Invariant with dag size 22 [2018-11-23 06:58:19,609 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,609 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,610 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,610 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] [2018-11-23 06:58:19,610 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,610 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,610 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,616 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,617 INFO L579 CodeCheckObserver]: Invariant with dag size 21 [2018-11-23 06:58:19,618 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,618 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,618 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,618 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,619 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,619 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,620 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,621 INFO L579 CodeCheckObserver]: Invariant with dag size 1 [2018-11-23 06:58:19,621 INFO L579 CodeCheckObserver]: Invariant with dag size 12 [2018-11-23 06:58:19,621 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,622 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,622 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,622 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,622 INFO L579 CodeCheckObserver]: Invariant with dag size 30 [2018-11-23 06:58:19,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,624 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,625 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,625 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 06:58:19 ImpRootNode [2018-11-23 06:58:19,625 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 06:58:19,625 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 06:58:19,625 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 06:58:19,626 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 06:58:19,626 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 06:56:20" (3/4) ... [2018-11-23 06:58:19,629 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 06:58:19,637 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 10 nodes and edges [2018-11-23 06:58:19,637 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 6 nodes and edges [2018-11-23 06:58:19,656 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: ~fp.div~DOUBLE(~roundNearestTiesToEven, ~fp.neg~DOUBLE(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0)), ~Pluszero~LONGDOUBLE()) == y && (\exists v_q#valueAsBitvector_7 : bv64 :: ~fp~LONGDOUBLE(v_q#valueAsBitvector_7[63:63], v_q#valueAsBitvector_7[62:52], v_q#valueAsBitvector_7[51:0]) == x && v_q#valueAsBitvector_7[63:32] == hx) [2018-11-23 06:58:19,657 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: ((\exists v_q#valueAsBitvector_7 : bv64 :: !(0bv32 == ~bvlshr32(~bvadd64(~bvand32(2147483647bv32, v_q#valueAsBitvector_7[63:32]), 2148532224bv32), 31bv32)) && ~fp~LONGDOUBLE(v_q#valueAsBitvector_7[63:63], v_q#valueAsBitvector_7[62:52], v_q#valueAsBitvector_7[51:0]) == x) && ~fp.div~DOUBLE(~roundNearestTiesToEven, ~fp.neg~DOUBLE(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0)), ~Pluszero~LONGDOUBLE()) == y) && x == x [2018-11-23 06:58:19,671 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_557d5153-f02c-49c8-80c5-6bb35fd3ea9c/bin-2019/ukojak/witness.graphml [2018-11-23 06:58:19,672 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 06:58:19,672 INFO L168 Benchmark]: Toolchain (without parser) took 124778.26 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 201.3 MB). Free memory was 947.9 MB in the beginning and 885.9 MB in the end (delta: 62.0 MB). Peak memory consumption was 263.3 MB. Max. memory is 11.5 GB. [2018-11-23 06:58:19,673 INFO L168 Benchmark]: CDTParser took 0.12 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 06:58:19,673 INFO L168 Benchmark]: CACSL2BoogieTranslator took 247.72 ms. Allocated memory is still 1.0 GB. Free memory was 947.9 MB in the beginning and 926.4 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-23 06:58:19,674 INFO L168 Benchmark]: Boogie Procedure Inliner took 82.64 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 144.7 MB). Free memory was 926.4 MB in the beginning and 1.1 GB in the end (delta: -206.8 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. [2018-11-23 06:58:19,674 INFO L168 Benchmark]: Boogie Preprocessor took 34.92 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 06:58:19,674 INFO L168 Benchmark]: RCFGBuilder took 5622.79 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 63.1 MB). Peak memory consumption was 63.1 MB. Max. memory is 11.5 GB. [2018-11-23 06:58:19,675 INFO L168 Benchmark]: CodeCheck took 118740.30 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 56.6 MB). Free memory was 1.1 GB in the beginning and 885.9 MB in the end (delta: 184.2 MB). Peak memory consumption was 240.8 MB. Max. memory is 11.5 GB. [2018-11-23 06:58:19,676 INFO L168 Benchmark]: Witness Printer took 46.43 ms. Allocated memory is still 1.2 GB. Free memory is still 885.9 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 06:58:19,678 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 1 procedures, 60 locations, 1 error locations. SAFE Result, 118.1s OverallTime, 5 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 250 SDtfs, 96 SDslu, 88 SDs, 0 SdLazy, 472 SolverSat, 120 SolverUnsat, 4 SolverUnknown, 0 SolverNotchecked, 63.8s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 500 GetRequests, 441 SyntacticMatches, 3 SemanticMatches, 56 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 743 ImplicationChecksByTransitivity, 85.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, traceCheckStatistics: 0.0s SsaConstructionTime, 0.8s SatisfiabilityAnalysisTime, 19.7s InterpolantComputationTime, 58 NumberOfCodeBlocks, 58 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 54 ConstructedInterpolants, 23 QuantifiedInterpolants, 12025 SizeOfPredicates, 29 NumberOfNonLiveVariables, 266 ConjunctsInSsa, 46 ConjunctsInUnsatCore, 4 InterpolantComputations, 4 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - PositiveResult [Line: 186]: call of __VERIFIER_error() unreachable For all program executions holds that call of __VERIFIER_error() unreachable at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 20]: Loop Invariant [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,680 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,681 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] Derived loop invariant: x == \result && (\exists v_q#valueAsBitvector_9 : bv64, v_prenex_17 : bv64 :: (!~bvsge32(~bvxor32(v_q#valueAsBitvector_9[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_9[63:32])), 2146435072bv32) && v_q#valueAsBitvector_9[63:32] == v_prenex_17[63:32]) && ~fp~LONGDOUBLE(v_q#valueAsBitvector_9[63:63], v_q#valueAsBitvector_9[62:52], v_q#valueAsBitvector_9[51:0]) == \result) - InvariantResult [Line: 162]: Loop Invariant [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,682 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] Derived loop invariant: ~fp.div~DOUBLE(~roundNearestTiesToEven, ~fp.neg~DOUBLE(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0)), ~Pluszero~LONGDOUBLE()) == y && (\exists v_q#valueAsBitvector_7 : bv64 :: ~fp~LONGDOUBLE(v_q#valueAsBitvector_7[63:63], v_q#valueAsBitvector_7[62:52], v_q#valueAsBitvector_7[51:0]) == x && v_q#valueAsBitvector_7[63:32] == hx) - InvariantResult [Line: 170]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 162]: Loop Invariant [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,683 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: ~fp.div~DOUBLE(~roundNearestTiesToEven, ~fp.neg~DOUBLE(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0)), ~Pluszero~LONGDOUBLE()) == y && x == x - InvariantResult [Line: 24]: Loop Invariant [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,684 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,685 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,685 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,685 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,685 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] [2018-11-23 06:58:19,685 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 06:58:19,686 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: ((\exists v_q#valueAsBitvector_7 : bv64 :: !(0bv32 == ~bvlshr32(~bvadd64(~bvand32(2147483647bv32, v_q#valueAsBitvector_7[63:32]), 2148532224bv32), 31bv32)) && ~fp~LONGDOUBLE(v_q#valueAsBitvector_7[63:63], v_q#valueAsBitvector_7[62:52], v_q#valueAsBitvector_7[51:0]) == x) && ~fp.div~DOUBLE(~roundNearestTiesToEven, ~fp.neg~DOUBLE(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0)), ~Pluszero~LONGDOUBLE()) == y) && x == x * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 247.72 ms. Allocated memory is still 1.0 GB. Free memory was 947.9 MB in the beginning and 926.4 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 82.64 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 144.7 MB). Free memory was 926.4 MB in the beginning and 1.1 GB in the end (delta: -206.8 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 34.92 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 5622.79 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 63.1 MB). Peak memory consumption was 63.1 MB. Max. memory is 11.5 GB. * CodeCheck took 118740.30 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 56.6 MB). Free memory was 1.1 GB in the beginning and 885.9 MB in the end (delta: 184.2 MB). Peak memory consumption was 240.8 MB. Max. memory is 11.5 GB. * Witness Printer took 46.43 ms. Allocated memory is still 1.2 GB. Free memory is still 885.9 MB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_prenex_17,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_9,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_7,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven RESULT: Ultimate proved your program to be correct! Received shutdown request...