./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_1122a_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_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer --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 Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 66cb741c1a4973eb036ada076f70b691f8ab4b25 ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer --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 Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 66cb741c1a4973eb036ada076f70b691f8ab4b25 ....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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 14:55:18,721 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 14:55:18,722 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 14:55:18,729 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 14:55:18,729 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 14:55:18,729 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 14:55:18,730 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 14:55:18,731 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 14:55:18,732 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 14:55:18,733 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 14:55:18,733 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 14:55:18,734 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 14:55:18,734 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 14:55:18,735 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 14:55:18,735 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 14:55:18,736 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 14:55:18,737 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 14:55:18,738 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 14:55:18,739 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 14:55:18,740 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 14:55:18,740 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 14:55:18,741 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 14:55:18,743 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 14:55:18,743 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 14:55:18,743 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 14:55:18,743 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 14:55:18,744 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 14:55:18,745 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 14:55:18,745 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 14:55:18,746 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 14:55:18,746 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 14:55:18,747 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 14:55:18,747 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 14:55:18,747 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 14:55:18,747 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 14:55:18,748 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 14:55:18,748 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 14:55:18,756 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 14:55:18,756 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 14:55:18,757 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 14:55:18,757 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 14:55:18,757 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 14:55:18,758 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 14:55:18,758 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 14:55:18,759 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 14:55:18,759 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 14:55:18,760 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 14:55:18,760 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 14:55:18,761 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 14:55:18,761 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 14:55:18,761 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_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer 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 -> Automizer 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 -> 66cb741c1a4973eb036ada076f70b691f8ab4b25 [2018-11-23 14:55:18,785 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 14:55:18,792 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 14:55:18,794 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 14:55:18,795 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 14:55:18,795 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 14:55:18,796 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:18,832 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/b2de03dff/03c7f1522376480cab13e0ba59235de6/FLAG7a887aa90 [2018-11-23 14:55:19,238 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 14:55:19,238 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:19,242 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/b2de03dff/03c7f1522376480cab13e0ba59235de6/FLAG7a887aa90 [2018-11-23 14:55:19,250 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/b2de03dff/03c7f1522376480cab13e0ba59235de6 [2018-11-23 14:55:19,252 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 14:55:19,253 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 14:55:19,253 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 14:55:19,253 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 14:55:19,255 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 14:55:19,256 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,258 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2e96cc93 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19, skipping insertion in model container [2018-11-23 14:55:19,258 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,264 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 14:55:19,298 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 14:55:19,431 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 14:55:19,433 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 14:55:19,458 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 14:55:19,510 INFO L195 MainTranslator]: Completed translation [2018-11-23 14:55:19,510 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19 WrapperNode [2018-11-23 14:55:19,510 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 14:55:19,511 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 14:55:19,511 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 14:55:19,511 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 14:55:19,516 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,524 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,530 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 14:55:19,531 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 14:55:19,531 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 14:55:19,531 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 14:55:19,541 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,541 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,543 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,544 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,556 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,564 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,566 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... [2018-11-23 14:55:19,568 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 14:55:19,569 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 14:55:19,569 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 14:55:19,569 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 14:55:19,570 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (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:2000 [2018-11-23 14:55:19,610 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_double [2018-11-23 14:55:19,610 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_double [2018-11-23 14:55:19,610 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 14:55:19,610 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 14:55:19,610 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 14:55:19,610 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 14:55:19,611 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_double [2018-11-23 14:55:19,611 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_double [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 14:55:19,611 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 14:55:19,611 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 14:55:19,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 14:55:19,612 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 14:55:20,014 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 14:55:20,014 INFO L280 CfgBuilder]: Removed 14 assue(true) statements. [2018-11-23 14:55:20,014 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:20 BoogieIcfgContainer [2018-11-23 14:55:20,014 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 14:55:20,015 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 14:55:20,015 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 14:55:20,017 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 14:55:20,017 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 02:55:19" (1/3) ... [2018-11-23 14:55:20,018 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d114ba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:55:20, skipping insertion in model container [2018-11-23 14:55:20,018 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:19" (2/3) ... [2018-11-23 14:55:20,018 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d114ba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:55:20, skipping insertion in model container [2018-11-23 14:55:20,018 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:20" (3/3) ... [2018-11-23 14:55:20,019 INFO L112 eAbstractionObserver]: Analyzing ICFG double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:20,027 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 14:55:20,033 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 14:55:20,043 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 14:55:20,066 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 14:55:20,066 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 14:55:20,066 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 14:55:20,066 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 14:55:20,066 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 14:55:20,066 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 14:55:20,067 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 14:55:20,067 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 14:55:20,067 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 14:55:20,079 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states. [2018-11-23 14:55:20,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 14:55:20,085 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 14:55:20,086 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 14:55:20,088 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 14:55:20,093 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 14:55:20,093 INFO L82 PathProgramCache]: Analyzing trace with hash -814364459, now seen corresponding path program 1 times [2018-11-23 14:55:20,095 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 14:55:20,095 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 14:55:20,134 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 14:55:20,135 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 14:55:20,135 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 14:55:20,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 14:55:20,202 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 14:55:20,203 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 14:55:20,204 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 14:55:20,206 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 14:55:20,214 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 14:55:20,214 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 14:55:20,216 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 2 states. [2018-11-23 14:55:20,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 14:55:20,237 INFO L93 Difference]: Finished difference Result 128 states and 210 transitions. [2018-11-23 14:55:20,237 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 14:55:20,238 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 22 [2018-11-23 14:55:20,238 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 14:55:20,247 INFO L225 Difference]: With dead ends: 128 [2018-11-23 14:55:20,247 INFO L226 Difference]: Without dead ends: 64 [2018-11-23 14:55:20,250 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 14:55:20,263 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-23 14:55:20,274 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 64. [2018-11-23 14:55:20,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2018-11-23 14:55:20,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 90 transitions. [2018-11-23 14:55:20,277 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 90 transitions. Word has length 22 [2018-11-23 14:55:20,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 14:55:20,277 INFO L480 AbstractCegarLoop]: Abstraction has 64 states and 90 transitions. [2018-11-23 14:55:20,277 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 14:55:20,277 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 90 transitions. [2018-11-23 14:55:20,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 14:55:20,278 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 14:55:20,278 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 14:55:20,278 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 14:55:20,278 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 14:55:20,279 INFO L82 PathProgramCache]: Analyzing trace with hash -920031726, now seen corresponding path program 1 times [2018-11-23 14:55:20,279 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 14:55:20,279 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 14:55:20,280 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 14:55:20,280 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 14:55:20,280 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 14:55:20,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 14:55:20,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 14:55:20,375 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=6442450953, |#NULL.offset|=6442450945, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450957, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450961.0, |~#Zero_fmod~0.base|=6442450957, |~#Zero_fmod~0.offset|=6442450952, ~one_fmod~0=6442450961.0] [?] #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); VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450957, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450961.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450957, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450961.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #261#return; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0);~y~0 := #t~nondet16;havoc #t~nondet16; VAL [main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x := #in~x;~y := #in~y;havoc ~n~0;havoc ~hx~0;havoc ~hy~0;havoc ~hz~0;havoc ~ix~0;havoc ~iy~0;havoc ~sx~0;havoc ~i~0;havoc ~lx~0;havoc ~ly~0;havoc ~lz~0; VAL [fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#ew_u~0.base, ~#ew_u~0.offset := #Ultimate.alloc(8);call write~real(~x, ~#ew_u~0.base, ~#ew_u~0.offset, 8);call #t~mem0 := read~int(~#ew_u~0.base, 4 + ~#ew_u~0.offset, 4);~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union1, ~#ew_u~0.base, ~#ew_u~0.offset, 8);havoc #t~union1;havoc #t~mem0;call #t~mem2 := read~int(~#ew_u~0.base, ~#ew_u~0.offset, 4);~lx~0 := #t~mem2;call write~real(#t~union3, ~#ew_u~0.base, ~#ew_u~0.offset, 8);havoc #t~mem2;havoc #t~union3;call ULTIMATE.dealloc(~#ew_u~0.base, ~#ew_u~0.offset);havoc ~#ew_u~0.base, ~#ew_u~0.offset; VAL [fmod_double_~hx~0=3, fmod_double_~lx~0=6442450960, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_double_~hx~0=3, fmod_double_~lx~0=6442450960, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#ew_u~1.base, ~#ew_u~1.offset := #Ultimate.alloc(8);call write~real(~y, ~#ew_u~1.base, ~#ew_u~1.offset, 8);call #t~mem4 := read~int(~#ew_u~1.base, 4 + ~#ew_u~1.offset, 4);~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union5, ~#ew_u~1.base, ~#ew_u~1.offset, 8);havoc #t~union5;havoc #t~mem4;call #t~mem6 := read~int(~#ew_u~1.base, ~#ew_u~1.offset, 4);~ly~0 := #t~mem6;call write~real(#t~union7, ~#ew_u~1.base, ~#ew_u~1.offset, 8);havoc #t~union7;havoc #t~mem6;call ULTIMATE.dealloc(~#ew_u~1.base, ~#ew_u~1.offset);havoc ~#ew_u~1.base, ~#ew_u~1.offset; VAL [fmod_double_~hx~0=3, fmod_double_~hy~0=(- 2147483648), fmod_double_~lx~0=6442450960, fmod_double_~ly~0=6442450951, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_double_~hx~0=3, fmod_double_~hy~0=(- 2147483648), fmod_double_~lx~0=6442450960, fmod_double_~ly~0=6442450951, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~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);~hx~0 := ~bitwiseXor(~hx~0, ~sx~0);~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [fmod_double_~lx~0=6442450960, fmod_double_~ly~0=6442450951, fmod_double_~sx~0=0, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072;#res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [fmod_double_~hx~0=2146435072, fmod_double_~lx~0=6442450960, fmod_double_~ly~0=6442450951, fmod_double_~sx~0=0, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [fmod_double_~hx~0=2146435072, fmod_double_~lx~0=6442450960, fmod_double_~ly~0=6442450951, fmod_double_~sx~0=0, fmod_double_~x=6442450959.0, fmod_double_~y=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_double_#in~x|=6442450959.0, |fmod_double_#in~y|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #265#return; VAL [main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret17|=6442450949.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~res~0 := #t~ret17;havoc #t~ret17; VAL [main_~res~0=6442450949.0, main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret18 := isnan_double(~res~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |isnan_double_#in~x|=6442450949.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x := #in~x;#res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [isnan_double_~x=6442450949.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_double_#in~x|=6442450949.0, |isnan_double_#res|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [isnan_double_~x=6442450949.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_double_#in~x|=6442450949.0, |isnan_double_#res|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #267#return; VAL [main_~res~0=6442450949.0, main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret18|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [main_~res~0=6442450949.0, main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret18|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume 0 == #t~ret18;havoc #t~ret18; VAL [main_~res~0=6442450949.0, main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !false; VAL [main_~res~0=6442450949.0, main_~x~0=6442450959.0, main_~y~0=6442450958.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450953, #NULL.offset=6442450945, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450957, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(16); [L18-L21] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 8); [L18-L21] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 8 + ~#Zero_fmod~0.offset, 8); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] call ~#ew_u~0.base, ~#ew_u~0.offset := #Ultimate.alloc(8); [L29] call write~real(~x, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L30] call #t~mem0 := read~int(~#ew_u~0.base, 4 + ~#ew_u~0.offset, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] call write~real(#t~union1, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] call #t~mem2 := read~int(~#ew_u~0.base, ~#ew_u~0.offset, 4); [L31] ~lx~0 := #t~mem2; [L31] call write~real(#t~union3, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] call ULTIMATE.dealloc(~#ew_u~0.base, ~#ew_u~0.offset); [L28] havoc ~#ew_u~0.base, ~#ew_u~0.offset; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] call ~#ew_u~1.base, ~#ew_u~1.offset := #Ultimate.alloc(8); [L35] call write~real(~y, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L36] call #t~mem4 := read~int(~#ew_u~1.base, 4 + ~#ew_u~1.offset, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] call write~real(#t~union5, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] call #t~mem6 := read~int(~#ew_u~1.base, ~#ew_u~1.offset, 4); [L37] ~ly~0 := #t~mem6; [L37] call write~real(#t~union7, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] call ULTIMATE.dealloc(~#ew_u~1.base, ~#ew_u~1.offset); [L34] havoc ~#ew_u~1.base, ~#ew_u~1.offset; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L45] assume (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072; [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L23-L161] ensures true; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L16] ensures true; VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret18=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret18=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175-L178] assume 0 == #t~ret18; [L175] havoc #t~ret18; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450953, #NULL.offset=6442450945, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450957, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(16); [L18-L21] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 8); [L18-L21] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 8 + ~#Zero_fmod~0.offset, 8); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450957, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] call ~#ew_u~0.base, ~#ew_u~0.offset := #Ultimate.alloc(8); [L29] call write~real(~x, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L30] call #t~mem0 := read~int(~#ew_u~0.base, 4 + ~#ew_u~0.offset, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] call write~real(#t~union1, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] call #t~mem2 := read~int(~#ew_u~0.base, ~#ew_u~0.offset, 4); [L31] ~lx~0 := #t~mem2; [L31] call write~real(#t~union3, ~#ew_u~0.base, ~#ew_u~0.offset, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] call ULTIMATE.dealloc(~#ew_u~0.base, ~#ew_u~0.offset); [L28] havoc ~#ew_u~0.base, ~#ew_u~0.offset; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] call ~#ew_u~1.base, ~#ew_u~1.offset := #Ultimate.alloc(8); [L35] call write~real(~y, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L36] call #t~mem4 := read~int(~#ew_u~1.base, 4 + ~#ew_u~1.offset, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] call write~real(#t~union5, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] call #t~mem6 := read~int(~#ew_u~1.base, ~#ew_u~1.offset, 4); [L37] ~ly~0 := #t~mem6; [L37] call write~real(#t~union7, ~#ew_u~1.base, ~#ew_u~1.offset, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] call ULTIMATE.dealloc(~#ew_u~1.base, ~#ew_u~1.offset); [L34] havoc ~#ew_u~1.base, ~#ew_u~1.offset; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L45] assume (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072; [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L23-L161] ensures true; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L16] ensures true; VAL [#in~x=6.442450949E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret18=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret18=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175-L178] assume 0 == #t~ret18; [L175] havoc #t~ret18; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450957, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L18-L21] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L18-L21] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L29] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L31] ~lx~0 := #t~mem2; [L31] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L28] havoc ~#ew_u~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L35] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L37] ~ly~0 := #t~mem6; [L37] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L34] havoc ~#ew_u~1; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L44] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] COND TRUE 0 == #t~ret18 [L175] havoc #t~ret18; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450957, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L18-L21] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L18-L21] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L29] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L31] ~lx~0 := #t~mem2; [L31] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L28] havoc ~#ew_u~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L35] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L37] ~ly~0 := #t~mem6; [L37] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L34] havoc ~#ew_u~1; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L44] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] COND TRUE 0 == #t~ret18 [L175] havoc #t~ret18; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450957, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L18-L21] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L18-L21] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L29] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L31] ~lx~0 := #t~mem2; [L31] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L28] havoc ~#ew_u~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L35] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L37] ~ly~0 := #t~mem6; [L37] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L34] havoc ~#ew_u~1; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L44] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] COND TRUE 0 == #t~ret18 [L175] havoc #t~ret18; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450957, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450961E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L18-L21] ~one_fmod~0 := 1.0; [L18-L21] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(16); [L18-L21] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 8); [L18-L21] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 8 + ~#Zero_fmod~0!offset }, 8); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450957, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450961E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret19 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L170] ~x~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L171] ~y~0 := #t~nondet16; [L171] havoc #t~nondet16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~y~0=6.442450958E9] [L172] CALL call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L23-L161] ~x := #in~x; [L23-L161] ~y := #in~y; [L24] havoc ~n~0; [L24] havoc ~hx~0; [L24] havoc ~hy~0; [L24] havoc ~hz~0; [L24] havoc ~ix~0; [L24] havoc ~iy~0; [L24] havoc ~sx~0; [L24] havoc ~i~0; [L25] havoc ~lx~0; [L25] havoc ~ly~0; [L25] havoc ~lz~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L28] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L29] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] FCALL call #t~mem0 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L30] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L30] FCALL call write~real(#t~union1, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L30] havoc #t~union1; [L30] havoc #t~mem0; [L31] FCALL call #t~mem2 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L31] ~lx~0 := #t~mem2; [L31] FCALL call write~real(#t~union3, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L31] havoc #t~mem2; [L31] havoc #t~union3; [L28] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L28] havoc ~#ew_u~0; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~lx~0=6442450960, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L34] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L35] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] FCALL call #t~mem4 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L36] ~hy~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L36] FCALL call write~real(#t~union5, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L36] havoc #t~union5; [L36] havoc #t~mem4; [L37] FCALL call #t~mem6 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L37] ~ly~0 := #t~mem6; [L37] FCALL call write~real(#t~union7, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L37] havoc #t~union7; [L37] havoc #t~mem6; [L34] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L34] havoc ~#ew_u~1; VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~x=6.442450959E9, ~y=6.442450958E9] [L39] ~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); [L40] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L41] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L43-L44] COND TRUE (0 == ~bitwiseOr(~hy~0, ~ly~0) % 4294967296 || ~hx~0 >= 2146435072) || ~bitwiseOr(~hy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L45] #res := ~someBinaryArithmeticDOUBLEoperation(~someBinaryArithmeticDOUBLEoperation(~x, ~y), ~someBinaryArithmeticDOUBLEoperation(~x, ~y)); VAL [#in~x=6.442450959E9, #in~y=6.442450958E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~hx~0=2146435072, ~lx~0=6442450960, ~ly~0=6442450951, ~one_fmod~0=1.0, ~sx~0=0, ~x=6.442450959E9, ~y=6.442450958E9] [L172] RET call #t~ret17 := fmod_double(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret17=6.442450949E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L172] ~res~0 := #t~ret17; [L172] havoc #t~ret17; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] CALL call #t~ret18 := isnan_double(~res~0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L16] ~x := #in~x; [L16] #res := (if ~someBinaryDOUBLEComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450949E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9] [L175] RET call #t~ret18 := isnan_double(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret18=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L175] COND TRUE 0 == #t~ret18 [L175] havoc #t~ret18; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L176] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450949E9, ~x~0=6.442450959E9, ~y~0=6.442450958E9] [L18-L21] static const double one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450961, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450957, one_fmod=1, Zero_fmod={6442450956:0}] [L170] double x = 1.0 / 0.0; [L171] double y = __VERIFIER_nondet_double(); [L172] CALL, EXPR fmod_double(x, y) VAL [\old(x)=6442450959, \old(y)=6442450958, one_fmod=1, Zero_fmod={6442450956:0}] [L24] __int32_t n, hx, hy, hz, ix, iy, sx, i; [L25] __uint32_t lx, ly, lz; VAL [\old(x)=6442450959, \old(y)=6442450958, one_fmod=1, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L28] ieee_double_shape_type ew_u; [L29] ew_u.value = (x) [L30] EXPR ew_u.parts.msw [L30] (hx) = ew_u.parts.msw [L31] EXPR ew_u.parts.lsw [L31] (lx) = ew_u.parts.lsw [L34] ieee_double_shape_type ew_u; [L35] ew_u.value = (y) [L36] EXPR ew_u.parts.msw [L36] (hy) = ew_u.parts.msw [L37] EXPR ew_u.parts.lsw [L37] (ly) = ew_u.parts.lsw [L39] sx = hx & 0x80000000 [L40] hx ^= sx [L41] hy &= 0x7fffffff VAL [\old(x)=6442450959, \old(y)=6442450958, lx=6442450960, ly=6442450951, one_fmod=1, sx=0, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L43-L44] COND TRUE (hy | ly) == 0 || (hx >= 0x7ff00000) || ((hy | ((ly | -ly) >> 31)) > 0x7ff00000) [L45] return (x * y) / (x * y); VAL [\old(x)=6442450959, \old(y)=6442450958, hx=2146435072, lx=6442450960, ly=6442450951, one_fmod=1, sx=0, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L172] RET, EXPR fmod_double(x, y) VAL [fmod_double(x, y)=6442450949, one_fmod=1, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L172] double res = fmod_double(x, y); [L175] CALL, EXPR isnan_double(res) VAL [\old(x)=6442450949, one_fmod=1, Zero_fmod={6442450956:0}] [L16] return x != x; VAL [\old(x)=6442450949, \result=0, one_fmod=1, x=6442450949, Zero_fmod={6442450956:0}] [L175] RET, EXPR isnan_double(res) VAL [isnan_double(res)=0, one_fmod=1, res=6442450949, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L175] COND TRUE !isnan_double(res) [L176] __VERIFIER_error() VAL [one_fmod=1, res=6442450949, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] ----- [2018-11-23 14:55:20,423 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 02:55:20 BoogieIcfgContainer [2018-11-23 14:55:20,423 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 14:55:20,423 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 14:55:20,424 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 14:55:20,424 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 14:55:20,424 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:20" (3/4) ... [2018-11-23 14:55:20,428 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 14:55:20,428 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 14:55:20,429 INFO L168 Benchmark]: Toolchain (without parser) took 1176.25 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 152.6 MB). Free memory was 958.1 MB in the beginning and 1.1 GB in the end (delta: -97.6 MB). Peak memory consumption was 55.0 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:20,430 INFO L168 Benchmark]: CDTParser took 0.10 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 14:55:20,430 INFO L168 Benchmark]: CACSL2BoogieTranslator took 257.22 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 152.6 MB). Free memory was 958.1 MB in the beginning and 1.2 GB in the end (delta: -192.1 MB). Peak memory consumption was 31.3 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:20,431 INFO L168 Benchmark]: Boogie Procedure Inliner took 19.77 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: 3.4 MB). Peak memory consumption was 3.4 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:20,432 INFO L168 Benchmark]: Boogie Preprocessor took 37.88 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 14:55:20,432 INFO L168 Benchmark]: RCFGBuilder took 445.59 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: 36.6 MB). Peak memory consumption was 36.6 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:20,433 INFO L168 Benchmark]: TraceAbstraction took 408.29 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: 44.3 MB). Peak memory consumption was 44.3 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:20,433 INFO L168 Benchmark]: Witness Printer took 4.61 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 14:55:20,436 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10 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 257.22 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 152.6 MB). Free memory was 958.1 MB in the beginning and 1.2 GB in the end (delta: -192.1 MB). Peak memory consumption was 31.3 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 19.77 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: 3.4 MB). Peak memory consumption was 3.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 37.88 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. * RCFGBuilder took 445.59 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: 36.6 MB). Peak memory consumption was 36.6 MB. Max. memory is 11.5 GB. * TraceAbstraction took 408.29 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: 44.3 MB). Peak memory consumption was 44.3 MB. Max. memory is 11.5 GB. * Witness Printer took 4.61 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. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 176]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of bitwiseOr at line 44, overapproximation of someUnaryDOUBLEoperation at line 20, overapproximation of someBinaryArithmeticDOUBLEoperation at line 45, overapproximation of bitwiseAnd at line 39, overapproximation of someBinaryDOUBLEComparisonOperation at line 16, overapproximation of bitwiseXor at line 40. Possible FailurePath: [L18-L21] static const double one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450961, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450957, one_fmod=1, Zero_fmod={6442450956:0}] [L170] double x = 1.0 / 0.0; [L171] double y = __VERIFIER_nondet_double(); [L172] CALL, EXPR fmod_double(x, y) VAL [\old(x)=6442450959, \old(y)=6442450958, one_fmod=1, Zero_fmod={6442450956:0}] [L24] __int32_t n, hx, hy, hz, ix, iy, sx, i; [L25] __uint32_t lx, ly, lz; VAL [\old(x)=6442450959, \old(y)=6442450958, one_fmod=1, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L28] ieee_double_shape_type ew_u; [L29] ew_u.value = (x) [L30] EXPR ew_u.parts.msw [L30] (hx) = ew_u.parts.msw [L31] EXPR ew_u.parts.lsw [L31] (lx) = ew_u.parts.lsw [L34] ieee_double_shape_type ew_u; [L35] ew_u.value = (y) [L36] EXPR ew_u.parts.msw [L36] (hy) = ew_u.parts.msw [L37] EXPR ew_u.parts.lsw [L37] (ly) = ew_u.parts.lsw [L39] sx = hx & 0x80000000 [L40] hx ^= sx [L41] hy &= 0x7fffffff VAL [\old(x)=6442450959, \old(y)=6442450958, lx=6442450960, ly=6442450951, one_fmod=1, sx=0, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L43-L44] COND TRUE (hy | ly) == 0 || (hx >= 0x7ff00000) || ((hy | ((ly | -ly) >> 31)) > 0x7ff00000) [L45] return (x * y) / (x * y); VAL [\old(x)=6442450959, \old(y)=6442450958, hx=2146435072, lx=6442450960, ly=6442450951, one_fmod=1, sx=0, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L172] RET, EXPR fmod_double(x, y) VAL [fmod_double(x, y)=6442450949, one_fmod=1, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L172] double res = fmod_double(x, y); [L175] CALL, EXPR isnan_double(res) VAL [\old(x)=6442450949, one_fmod=1, Zero_fmod={6442450956:0}] [L16] return x != x; VAL [\old(x)=6442450949, \result=0, one_fmod=1, x=6442450949, Zero_fmod={6442450956:0}] [L175] RET, EXPR isnan_double(res) VAL [isnan_double(res)=0, one_fmod=1, res=6442450949, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] [L175] COND TRUE !isnan_double(res) [L176] __VERIFIER_error() VAL [one_fmod=1, res=6442450949, x=6442450959, y=6442450958, Zero_fmod={6442450956:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 68 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 94 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=68occurred in iteration=0, traceCheckStatistics: No data available, 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: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 46 NumberOfCodeBlocks, 46 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 21 ConstructedInterpolants, 0 QuantifiedInterpolants, 441 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available 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 14:55:21,950 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 14:55:21,951 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 14:55:21,960 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 14:55:21,960 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 14:55:21,961 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 14:55:21,962 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 14:55:21,963 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 14:55:21,964 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 14:55:21,965 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 14:55:21,966 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 14:55:21,966 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 14:55:21,967 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 14:55:21,968 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 14:55:21,968 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 14:55:21,969 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 14:55:21,970 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 14:55:21,971 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 14:55:21,973 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 14:55:21,974 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 14:55:21,975 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 14:55:21,975 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 14:55:21,977 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 14:55:21,977 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 14:55:21,977 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 14:55:21,978 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 14:55:21,979 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 14:55:21,980 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 14:55:21,980 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 14:55:21,981 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 14:55:21,981 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 14:55:21,982 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 14:55:21,982 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 14:55:21,982 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 14:55:21,983 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 14:55:21,983 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 14:55:21,984 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 14:55:21,994 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 14:55:21,994 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 14:55:21,994 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 14:55:21,995 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 14:55:21,995 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 14:55:21,995 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 14:55:21,995 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 14:55:21,996 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 14:55:21,996 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 14:55:21,997 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 14:55:21,997 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 14:55:21,998 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 14:55:21,998 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 14:55:21,999 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 14:55:21,999 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 14:55:21,999 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 14:55:21,999 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_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer 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 -> Automizer 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 -> 66cb741c1a4973eb036ada076f70b691f8ab4b25 [2018-11-23 14:55:22,031 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 14:55:22,042 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 14:55:22,045 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 14:55:22,046 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 14:55:22,047 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 14:55:22,047 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:22,092 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/82d30fb88/54ffae662552434eb7da4b2e7545d316/FLAG1da99dfae [2018-11-23 14:55:22,431 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 14:55:22,432 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/sv-benchmarks/c/float-newlib/double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:22,437 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/82d30fb88/54ffae662552434eb7da4b2e7545d316/FLAG1da99dfae [2018-11-23 14:55:22,852 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/data/82d30fb88/54ffae662552434eb7da4b2e7545d316 [2018-11-23 14:55:22,855 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 14:55:22,856 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 14:55:22,856 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 14:55:22,856 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 14:55:22,858 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 14:55:22,859 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:55:22" (1/1) ... [2018-11-23 14:55:22,861 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@705312dd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:22, skipping insertion in model container [2018-11-23 14:55:22,861 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:55:22" (1/1) ... [2018-11-23 14:55:22,867 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 14:55:22,885 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 14:55:23,042 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 14:55:23,048 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 14:55:23,085 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 14:55:23,104 INFO L195 MainTranslator]: Completed translation [2018-11-23 14:55:23,104 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23 WrapperNode [2018-11-23 14:55:23,104 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 14:55:23,105 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 14:55:23,105 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 14:55:23,105 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 14:55:23,110 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,118 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,123 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 14:55:23,123 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 14:55:23,124 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 14:55:23,124 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 14:55:23,177 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,177 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,181 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,181 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,197 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,204 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,207 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... [2018-11-23 14:55:23,210 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 14:55:23,211 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 14:55:23,211 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 14:55:23,211 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 14:55:23,212 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (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:2000 [2018-11-23 14:55:23,249 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_double [2018-11-23 14:55:23,249 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_double [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 14:55:23,250 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 14:55:23,250 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 14:55:23,250 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 14:55:23,251 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_double [2018-11-23 14:55:23,251 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_double [2018-11-23 14:55:23,251 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 14:55:23,251 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 14:55:23,251 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 14:55:23,251 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 14:55:23,357 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 14:55:23,429 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 14:55:23,468 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 14:55:26,312 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 14:55:26,313 INFO L280 CfgBuilder]: Removed 14 assue(true) statements. [2018-11-23 14:55:26,313 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:26 BoogieIcfgContainer [2018-11-23 14:55:26,313 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 14:55:26,314 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 14:55:26,314 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 14:55:26,316 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 14:55:26,317 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 02:55:22" (1/3) ... [2018-11-23 14:55:26,317 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@14363218 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:55:26, skipping insertion in model container [2018-11-23 14:55:26,317 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:55:23" (2/3) ... [2018-11-23 14:55:26,317 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@14363218 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:55:26, skipping insertion in model container [2018-11-23 14:55:26,318 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:26" (3/3) ... [2018-11-23 14:55:26,319 INFO L112 eAbstractionObserver]: Analyzing ICFG double_req_bl_1122a_true-unreach-call.c [2018-11-23 14:55:26,324 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 14:55:26,329 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 14:55:26,338 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 14:55:26,358 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 14:55:26,359 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 14:55:26,359 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 14:55:26,359 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 14:55:26,359 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 14:55:26,359 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 14:55:26,359 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 14:55:26,359 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 14:55:26,360 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 14:55:26,371 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states. [2018-11-23 14:55:26,375 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-23 14:55:26,375 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 14:55:26,375 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 14:55:26,377 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 14:55:26,380 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 14:55:26,380 INFO L82 PathProgramCache]: Analyzing trace with hash 976306344, now seen corresponding path program 1 times [2018-11-23 14:55:26,383 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 14:55:26,383 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/mathsat Starting monitored process 2 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with mathsat -unsat_core_generation=3 [2018-11-23 14:55:26,387 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 14:55:27,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 14:55:27,231 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 14:55:27,244 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 14:55:27,244 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 14:55:27,264 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 14:55:27,264 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 14:55:27,267 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 14:55:27,274 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 14:55:27,275 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 14:55:27,276 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 2 states. [2018-11-23 14:55:27,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 14:55:27,293 INFO L93 Difference]: Finished difference Result 126 states and 208 transitions. [2018-11-23 14:55:27,293 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 14:55:27,294 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 21 [2018-11-23 14:55:27,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 14:55:27,303 INFO L225 Difference]: With dead ends: 126 [2018-11-23 14:55:27,303 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 14:55:27,306 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 14:55:27,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 14:55:27,330 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 63. [2018-11-23 14:55:27,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 14:55:27,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 89 transitions. [2018-11-23 14:55:27,333 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 89 transitions. Word has length 21 [2018-11-23 14:55:27,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 14:55:27,333 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 89 transitions. [2018-11-23 14:55:27,333 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 14:55:27,333 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 89 transitions. [2018-11-23 14:55:27,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 14:55:27,334 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 14:55:27,334 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 14:55:27,334 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 14:55:27,334 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 14:55:27,335 INFO L82 PathProgramCache]: Analyzing trace with hash -2037518261, now seen corresponding path program 1 times [2018-11-23 14:55:27,335 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 14:55:27,335 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/mathsat Starting monitored process 3 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with mathsat -unsat_core_generation=3 [2018-11-23 14:55:27,349 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 14:55:28,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 14:55:28,211 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 14:55:30,535 WARN L832 $PredicateComparison]: unable to prove that (exists ((fmod_double_~y (_ FloatingPoint 11 53))) (= |c_fmod_double_#res| (let ((.cse0 (fp.mul roundNearestTiesToEven |c_fmod_double_#in~x| fmod_double_~y))) (fp.div roundNearestTiesToEven .cse0 .cse0)))) is different from false [2018-11-23 14:55:34,920 WARN L854 $PredicateComparison]: unable to prove that (exists ((fmod_double_~y (_ FloatingPoint 11 53))) (= |c_main_#t~ret17| (let ((.cse0 (fp.mul roundNearestTiesToEven (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) fmod_double_~y))) (fp.div roundNearestTiesToEven .cse0 .cse0)))) is different from true [2018-11-23 14:55:38,287 WARN L854 $PredicateComparison]: unable to prove that (exists ((fmod_double_~y (_ FloatingPoint 11 53))) (= (let ((.cse0 (fp.mul roundNearestTiesToEven (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) fmod_double_~y))) (fp.div roundNearestTiesToEven .cse0 .cse0)) c_main_~res~0)) is different from true [2018-11-23 14:55:40,759 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 14:55:40,760 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 14:55:40,785 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 14:55:40,785 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 14:55:40,786 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 14:55:40,787 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 14:55:40,787 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=24, Unknown=3, NotChecked=30, Total=72 [2018-11-23 14:55:40,787 INFO L87 Difference]: Start difference. First operand 63 states and 89 transitions. Second operand 9 states. [2018-11-23 14:55:45,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 14:55:45,813 INFO L93 Difference]: Finished difference Result 72 states and 98 transitions. [2018-11-23 14:55:45,813 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 14:55:45,813 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 23 [2018-11-23 14:55:45,814 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 14:55:45,815 INFO L225 Difference]: With dead ends: 72 [2018-11-23 14:55:45,815 INFO L226 Difference]: Without dead ends: 65 [2018-11-23 14:55:45,816 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.1s TimeCoverageRelationStatistics Valid=15, Invalid=24, Unknown=3, NotChecked=30, Total=72 [2018-11-23 14:55:45,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2018-11-23 14:55:45,823 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 63. [2018-11-23 14:55:45,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 14:55:45,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 88 transitions. [2018-11-23 14:55:45,825 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 88 transitions. Word has length 23 [2018-11-23 14:55:45,825 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 14:55:45,825 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 88 transitions. [2018-11-23 14:55:45,825 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 14:55:45,825 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 88 transitions. [2018-11-23 14:55:45,826 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 14:55:45,826 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 14:55:45,827 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 14:55:45,827 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 14:55:45,827 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 14:55:45,827 INFO L82 PathProgramCache]: Analyzing trace with hash 1706768295, now seen corresponding path program 1 times [2018-11-23 14:55:45,828 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 14:55:45,828 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/mathsat Starting monitored process 4 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with mathsat -unsat_core_generation=3 [2018-11-23 14:55:45,836 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 14:55:45,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 14:55:45,921 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 14:55:46,043 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 14:55:46,044 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 14:55:46,056 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 14:55:46,056 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 14:55:46,057 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 14:55:46,057 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 14:55:46,057 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 14:55:46,057 INFO L87 Difference]: Start difference. First operand 63 states and 88 transitions. Second operand 7 states. [2018-11-23 14:55:47,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 14:55:47,088 INFO L93 Difference]: Finished difference Result 67 states and 92 transitions. [2018-11-23 14:55:47,120 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 14:55:47,120 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 25 [2018-11-23 14:55:47,120 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 14:55:47,121 INFO L225 Difference]: With dead ends: 67 [2018-11-23 14:55:47,121 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 14:55:47,121 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2018-11-23 14:55:47,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 14:55:47,121 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 14:55:47,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 14:55:47,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 14:55:47,122 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 25 [2018-11-23 14:55:47,122 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 14:55:47,122 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 14:55:47,122 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 14:55:47,122 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 14:55:47,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 14:55:47,126 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 14:55:49,229 WARN L180 SmtUtils]: Spent 1.95 s on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 14:55:49,305 INFO L451 ceAbstractionStarter]: At program point isnan_doubleENTRY(line 16) the Hoare annotation is: true [2018-11-23 14:55:49,305 INFO L448 ceAbstractionStarter]: For program point isnan_doubleEXIT(line 16) no Hoare annotation was computed. [2018-11-23 14:55:49,305 INFO L448 ceAbstractionStarter]: For program point isnan_doubleFINAL(line 16) no Hoare annotation was computed. [2018-11-23 14:55:49,305 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point L118(lines 118 119) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point L118-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point L69-2(lines 69 70) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L444 ceAbstractionStarter]: At program point L69-3(lines 69 70) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))))) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))) (= (let ((.cse1 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse1 (bvand (_ bv2147483648 32) .cse1))) fmod_double_~hx~0)))) [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point L152(lines 152 157) no Hoare annotation was computed. [2018-11-23 14:55:49,306 INFO L448 ceAbstractionStarter]: For program point L152-1(lines 140 159) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L152-2(lines 152 157) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L53(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point fmod_doubleFINAL(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L120-1(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L54(lines 54 60) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L104(lines 104 105) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L104-2(lines 101 115) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L448 ceAbstractionStarter]: For program point L55-2(lines 55 56) no Hoare annotation was computed. [2018-11-23 14:55:49,307 INFO L444 ceAbstractionStarter]: At program point L55-3(lines 55 56) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))))) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))) (= (let ((.cse1 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse1 (bvand (_ bv2147483648 32) .cse1))) fmod_double_~hx~0)))) [2018-11-23 14:55:49,308 INFO L444 ceAbstractionStarter]: At program point L106-1(lines 101 115) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|)))))) [2018-11-23 14:55:49,308 INFO L448 ceAbstractionStarter]: For program point L91(lines 91 97) no Hoare annotation was computed. [2018-11-23 14:55:49,308 INFO L448 ceAbstractionStarter]: For program point L91-2(lines 87 98) no Hoare annotation was computed. [2018-11-23 14:55:49,308 INFO L448 ceAbstractionStarter]: For program point L58-2(lines 58 59) no Hoare annotation was computed. [2018-11-23 14:55:49,308 INFO L444 ceAbstractionStarter]: At program point L58-3(lines 58 59) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))))) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))) (= (let ((.cse1 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse1 (bvand (_ bv2147483648 32) .cse1))) fmod_double_~hx~0)))) [2018-11-23 14:55:49,308 INFO L451 ceAbstractionStarter]: At program point fmod_doubleENTRY(lines 23 161) the Hoare annotation is: true [2018-11-23 14:55:49,308 INFO L448 ceAbstractionStarter]: For program point L142(lines 142 151) no Hoare annotation was computed. [2018-11-23 14:55:49,308 INFO L448 ceAbstractionStarter]: For program point L43(lines 43 45) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L27-1(lines 27 32) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L444 ceAbstractionStarter]: At program point L27-2(lines 27 32) the Hoare annotation is: (= |fmod_double_#in~x| fmod_double_~x) [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L110(lines 110 111) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L444 ceAbstractionStarter]: At program point L127-2(lines 127 131) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|)))))) [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L127-3(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L145(lines 145 151) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L79(lines 79 85) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L46(lines 46 51) no Hoare annotation was computed. [2018-11-23 14:55:49,309 INFO L448 ceAbstractionStarter]: For program point L79-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L46-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L47(lines 47 48) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L64(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L65(lines 65 71) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point fmod_doubleEXIT(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L49(lines 49 50) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L132(lines 132 159) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L33(lines 33 38) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L33-1(lines 23 161) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L66-2(lines 66 67) no Hoare annotation was computed. [2018-11-23 14:55:49,310 INFO L448 ceAbstractionStarter]: For program point L33-2(lines 33 38) no Hoare annotation was computed. [2018-11-23 14:55:49,311 INFO L444 ceAbstractionStarter]: At program point L66-3(lines 66 67) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))))) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|))) (= (let ((.cse1 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse1 (bvand (_ bv2147483648 32) .cse1))) fmod_double_~hx~0)))) [2018-11-23 14:55:49,311 INFO L448 ceAbstractionStarter]: For program point L134-1(lines 134 139) no Hoare annotation was computed. [2018-11-23 14:55:49,311 INFO L448 ceAbstractionStarter]: For program point L101-1(lines 101 115) no Hoare annotation was computed. [2018-11-23 14:55:49,311 INFO L444 ceAbstractionStarter]: At program point L134-2(lines 134 139) the Hoare annotation is: (and (= |fmod_double_#in~x| fmod_double_~x) (exists ((|v_q#valueAsBitvector_4| (_ BitVec 64))) (and (not (bvsge (let ((.cse0 ((_ extract 63 32) |v_q#valueAsBitvector_4|))) (bvxor .cse0 (bvand (_ bv2147483648 32) .cse0))) (_ bv2146435072 32))) (= |fmod_double_#in~x| (fp ((_ extract 63 63) |v_q#valueAsBitvector_4|) ((_ extract 62 52) |v_q#valueAsBitvector_4|) ((_ extract 51 0) |v_q#valueAsBitvector_4|)))))) [2018-11-23 14:55:49,311 INFO L448 ceAbstractionStarter]: For program point L101-3(lines 101 115) no Hoare annotation was computed. [2018-11-23 14:55:49,311 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 14:55:49,311 INFO L451 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-23 14:55:49,312 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 14:55:49,312 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 14:55:49,312 INFO L448 ceAbstractionStarter]: For program point L176(line 176) no Hoare annotation was computed. [2018-11-23 14:55:49,312 INFO L444 ceAbstractionStarter]: At program point L175(line 175) the Hoare annotation is: (exists ((fmod_double_~y (_ FloatingPoint 11 53))) (= (let ((.cse0 (fp.mul roundNearestTiesToEven (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) fmod_double_~y))) (fp.div roundNearestTiesToEven .cse0 .cse0)) main_~res~0)) [2018-11-23 14:55:49,312 INFO L448 ceAbstractionStarter]: For program point L175-1(lines 175 178) no Hoare annotation was computed. [2018-11-23 14:55:49,312 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 163 181) the Hoare annotation is: true [2018-11-23 14:55:49,312 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 163 181) no Hoare annotation was computed. [2018-11-23 14:55:49,312 INFO L444 ceAbstractionStarter]: At program point L172(line 172) the Hoare annotation is: (= main_~x~0 (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53))) [2018-11-23 14:55:49,312 INFO L448 ceAbstractionStarter]: For program point L172-1(line 172) no Hoare annotation was computed. [2018-11-23 14:55:49,313 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 163 181) no Hoare annotation was computed. [2018-11-23 14:55:49,313 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 176) no Hoare annotation was computed. [2018-11-23 14:55:49,317 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,318 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,319 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,319 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,319 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,323 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,323 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,324 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,325 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,325 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,326 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,326 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,326 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,326 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,326 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,327 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,327 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,327 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,327 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,328 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,328 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,328 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,329 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,330 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,330 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,330 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,331 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,331 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,331 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,331 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,331 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,332 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,332 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,332 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,332 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,333 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,333 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,333 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,333 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,333 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,334 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,334 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,334 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,334 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,334 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,335 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,335 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,335 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,335 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,336 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,337 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,337 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,337 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,337 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,337 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,338 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,339 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,339 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,339 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,339 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,339 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,340 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,340 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,340 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,340 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,341 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,341 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,341 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,341 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,342 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,342 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,342 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,346 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,347 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,347 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,348 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,348 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,348 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,348 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,349 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,349 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,349 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,349 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,349 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,351 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 02:55:49 BoogieIcfgContainer [2018-11-23 14:55:49,351 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 14:55:49,351 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 14:55:49,351 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 14:55:49,351 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 14:55:49,352 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:55:26" (3/4) ... [2018-11-23 14:55:49,354 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 14:55:49,358 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure isnan_double [2018-11-23 14:55:49,358 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2018-11-23 14:55:49,358 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure fmod_double [2018-11-23 14:55:49,359 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2018-11-23 14:55:49,362 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 19 nodes and edges [2018-11-23 14:55:49,362 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 9 nodes and edges [2018-11-23 14:55:49,362 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2018-11-23 14:55:49,362 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2018-11-23 14:55:49,379 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: \old(x) == x [2018-11-23 14:55:49,388 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_86acd79a-cd06-4737-8855-a6a0031d0c7a/bin-2019/uautomizer/witness.graphml [2018-11-23 14:55:49,388 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 14:55:49,389 INFO L168 Benchmark]: Toolchain (without parser) took 26533.43 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 131.1 MB). Free memory was 953.2 MB in the beginning and 947.2 MB in the end (delta: 6.1 MB). Peak memory consumption was 137.1 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,389 INFO L168 Benchmark]: CDTParser took 0.18 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 14:55:49,389 INFO L168 Benchmark]: CACSL2BoogieTranslator took 248.05 ms. Allocated memory is still 1.0 GB. Free memory was 953.2 MB in the beginning and 937.1 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,390 INFO L168 Benchmark]: Boogie Procedure Inliner took 18.73 ms. Allocated memory is still 1.0 GB. Free memory was 937.1 MB in the beginning and 931.7 MB in the end (delta: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,390 INFO L168 Benchmark]: Boogie Preprocessor took 86.95 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 131.1 MB). Free memory was 931.7 MB in the beginning and 1.1 GB in the end (delta: -187.5 MB). Peak memory consumption was 15.3 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,391 INFO L168 Benchmark]: RCFGBuilder took 3102.61 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: 37.4 MB). Peak memory consumption was 37.4 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,391 INFO L168 Benchmark]: TraceAbstraction took 23037.05 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 947.2 MB in the end (delta: 128.1 MB). Peak memory consumption was 128.1 MB. Max. memory is 11.5 GB. [2018-11-23 14:55:49,392 INFO L168 Benchmark]: Witness Printer took 36.95 ms. Allocated memory is still 1.2 GB. Free memory is still 947.2 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 14:55:49,394 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18 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 248.05 ms. Allocated memory is still 1.0 GB. Free memory was 953.2 MB in the beginning and 937.1 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 18.73 ms. Allocated memory is still 1.0 GB. Free memory was 937.1 MB in the beginning and 931.7 MB in the end (delta: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 86.95 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 131.1 MB). Free memory was 931.7 MB in the beginning and 1.1 GB in the end (delta: -187.5 MB). Peak memory consumption was 15.3 MB. Max. memory is 11.5 GB. * RCFGBuilder took 3102.61 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: 37.4 MB). Peak memory consumption was 37.4 MB. Max. memory is 11.5 GB. * TraceAbstraction took 23037.05 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 947.2 MB in the end (delta: 128.1 MB). Peak memory consumption was 128.1 MB. Max. memory is 11.5 GB. * Witness Printer took 36.95 ms. Allocated memory is still 1.2 GB. Free memory is still 947.2 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_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 176]: 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: 58]: Loop Invariant [2018-11-23 14:55:49,400 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,402 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,402 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,403 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,404 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,404 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,404 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,404 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,405 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: (\old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]))) && (\exists v_q#valueAsBitvector_4 : bv64 :: \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]) && ~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])) == hx) - InvariantResult [Line: 69]: Loop Invariant [2018-11-23 14:55:49,406 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,406 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,406 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,406 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,406 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,407 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,408 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,409 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,409 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: (\old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]))) && (\exists v_q#valueAsBitvector_4 : bv64 :: \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]) && ~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])) == hx) - InvariantResult [Line: 127]: Loop Invariant [2018-11-23 14:55:49,409 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,409 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,410 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,410 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,410 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,412 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,412 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,412 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,412 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,412 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: \old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0])) - InvariantResult [Line: 55]: Loop Invariant [2018-11-23 14:55:49,413 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,413 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,413 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,413 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,413 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,414 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,415 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: (\old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]))) && (\exists v_q#valueAsBitvector_4 : bv64 :: \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]) && ~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])) == hx) - InvariantResult [Line: 134]: Loop Invariant [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,416 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,417 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,418 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: \old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0])) - InvariantResult [Line: 66]: Loop Invariant [2018-11-23 14:55:49,418 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,418 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,418 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,418 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,419 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,420 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,421 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,421 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,421 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: (\old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]))) && (\exists v_q#valueAsBitvector_4 : bv64 :: \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0]) && ~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])) == hx) - InvariantResult [Line: 27]: Loop Invariant Derived loop invariant: \old(x) == x - InvariantResult [Line: 101]: Loop Invariant [2018-11-23 14:55:49,421 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,421 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,422 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,423 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 14:55:49,423 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] Derived loop invariant: \old(x) == x && (\exists v_q#valueAsBitvector_4 : bv64 :: !~bvsge32(~bvxor32(v_q#valueAsBitvector_4[63:32], ~bvand32(2147483648bv32, v_q#valueAsBitvector_4[63:32])), 2146435072bv32) && \old(x) == ~fp~LONGDOUBLE(v_q#valueAsBitvector_4[63:63], v_q#valueAsBitvector_4[62:52], v_q#valueAsBitvector_4[51:0])) - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 67 locations, 1 error locations. SAFE Result, 22.9s OverallTime, 3 OverallIterations, 1 TraceHistogramMax, 6.1s AutomataDifference, 0.0s DeadEndRemovalTime, 2.1s HoareAnnotationTime, HoareTripleCheckerStatistics: 245 SDtfs, 218 SDslu, 436 SDs, 0 SdLazy, 108 SolverSat, 5 SolverUnsat, 2 SolverUnknown, 0 SolverNotchecked, 5.4s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 70 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 10.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=67occurred in iteration=0, traceCheckStatistics: No data available, 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: 0.0s AutomataMinimizationTime, 3 MinimizatonAttempts, 2 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 18 PreInvPairs, 27 NumberOfFragments, 295 HoareAnnotationTreeSize, 18 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 2.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 1.6s SatisfiabilityAnalysisTime, 12.8s InterpolantComputationTime, 69 NumberOfCodeBlocks, 69 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 66 ConstructedInterpolants, 13 QuantifiedInterpolants, 8102 SizeOfPredicates, 9 NumberOfNonLiveVariables, 269 ConjunctsInSsa, 20 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...