./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_1122b_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_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 c6a2c9a76eae0e8993608269b8bc800503d7af17 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 c6a2c9a76eae0e8993608269b8bc800503d7af17 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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 01:18:51,543 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 01:18:51,544 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 01:18:51,552 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 01:18:51,552 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 01:18:51,553 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 01:18:51,553 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 01:18:51,555 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 01:18:51,556 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 01:18:51,556 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 01:18:51,557 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 01:18:51,557 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 01:18:51,558 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 01:18:51,559 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 01:18:51,559 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 01:18:51,560 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 01:18:51,561 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 01:18:51,562 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 01:18:51,563 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 01:18:51,564 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 01:18:51,565 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 01:18:51,566 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 01:18:51,568 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 01:18:51,568 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 01:18:51,568 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 01:18:51,569 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 01:18:51,569 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 01:18:51,570 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 01:18:51,571 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 01:18:51,571 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 01:18:51,572 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 01:18:51,572 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 01:18:51,572 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 01:18:51,572 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 01:18:51,573 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 01:18:51,573 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 01:18:51,573 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 01:18:51,583 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 01:18:51,583 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 01:18:51,584 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 01:18:51,584 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 01:18:51,584 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 01:18:51,584 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 01:18:51,585 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 01:18:51,585 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 01:18:51,586 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 01:18:51,586 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 01:18:51,586 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 01:18:51,587 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 01:18:51,587 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 01:18:51,587 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 01:18:51,587 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 01:18:51,587 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_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 -> c6a2c9a76eae0e8993608269b8bc800503d7af17 [2018-11-23 01:18:51,611 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 01:18:51,620 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 01:18:51,623 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 01:18:51,624 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 01:18:51,624 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 01:18:51,624 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:51,662 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/79a7cf683/4480b18a57cb45c5ae6f672a10f483c0/FLAGc8ea4d82d [2018-11-23 01:18:52,072 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 01:18:52,072 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:52,077 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/79a7cf683/4480b18a57cb45c5ae6f672a10f483c0/FLAGc8ea4d82d [2018-11-23 01:18:52,089 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/79a7cf683/4480b18a57cb45c5ae6f672a10f483c0 [2018-11-23 01:18:52,091 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 01:18:52,092 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 01:18:52,092 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 01:18:52,092 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 01:18:52,095 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 01:18:52,096 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,098 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@64d4648b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52, skipping insertion in model container [2018-11-23 01:18:52,098 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,104 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 01:18:52,122 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 01:18:52,271 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 01:18:52,275 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 01:18:52,309 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 01:18:52,363 INFO L195 MainTranslator]: Completed translation [2018-11-23 01:18:52,363 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52 WrapperNode [2018-11-23 01:18:52,363 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 01:18:52,364 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 01:18:52,364 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 01:18:52,364 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 01:18:52,371 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,382 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,388 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 01:18:52,388 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 01:18:52,388 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 01:18:52,388 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 01:18:52,394 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,395 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,397 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,397 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,412 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,420 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,422 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... [2018-11-23 01:18:52,424 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 01:18:52,425 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 01:18:52,425 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 01:18:52,425 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 01:18:52,426 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 01:18:52,471 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_double [2018-11-23 01:18:52,472 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_double [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 01:18:52,472 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 01:18:52,472 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 01:18:52,472 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 01:18:52,473 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_double [2018-11-23 01:18:52,473 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_double [2018-11-23 01:18:52,473 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 01:18:52,473 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 01:18:52,473 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 01:18:52,473 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 01:18:52,473 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 01:18:52,870 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 01:18:52,870 INFO L280 CfgBuilder]: Removed 14 assue(true) statements. [2018-11-23 01:18:52,871 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:52 BoogieIcfgContainer [2018-11-23 01:18:52,871 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 01:18:52,871 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 01:18:52,871 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 01:18:52,874 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 01:18:52,874 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 01:18:52" (1/3) ... [2018-11-23 01:18:52,874 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16ceacaf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:18:52, skipping insertion in model container [2018-11-23 01:18:52,874 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:52" (2/3) ... [2018-11-23 01:18:52,875 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16ceacaf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:18:52, skipping insertion in model container [2018-11-23 01:18:52,875 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:52" (3/3) ... [2018-11-23 01:18:52,876 INFO L112 eAbstractionObserver]: Analyzing ICFG double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:52,885 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 01:18:52,891 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 01:18:52,901 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 01:18:52,920 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 01:18:52,920 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 01:18:52,920 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 01:18:52,920 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 01:18:52,920 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 01:18:52,920 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 01:18:52,921 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 01:18:52,921 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 01:18:52,921 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 01:18:52,933 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states. [2018-11-23 01:18:52,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 01:18:52,939 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 01:18:52,940 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 01:18:52,942 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 01:18:52,947 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 01:18:52,947 INFO L82 PathProgramCache]: Analyzing trace with hash -814364459, now seen corresponding path program 1 times [2018-11-23 01:18:52,949 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 01:18:52,949 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 01:18:52,982 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 01:18:52,982 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 01:18:52,982 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 01:18:53,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 01:18:53,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 01:18:53,045 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 01:18:53,045 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 01:18:53,047 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 01:18:53,054 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 01:18:53,055 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 01:18:53,056 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 2 states. [2018-11-23 01:18:53,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 01:18:53,071 INFO L93 Difference]: Finished difference Result 128 states and 210 transitions. [2018-11-23 01:18:53,071 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 01:18:53,072 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 22 [2018-11-23 01:18:53,072 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 01:18:53,079 INFO L225 Difference]: With dead ends: 128 [2018-11-23 01:18:53,079 INFO L226 Difference]: Without dead ends: 64 [2018-11-23 01:18:53,081 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 01:18:53,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-23 01:18:53,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 64. [2018-11-23 01:18:53,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2018-11-23 01:18:53,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 90 transitions. [2018-11-23 01:18:53,107 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 90 transitions. Word has length 22 [2018-11-23 01:18:53,107 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 01:18:53,107 INFO L480 AbstractCegarLoop]: Abstraction has 64 states and 90 transitions. [2018-11-23 01:18:53,108 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 01:18:53,108 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 90 transitions. [2018-11-23 01:18:53,109 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 01:18:53,109 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 01:18:53,109 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 01:18:53,109 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 01:18:53,109 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 01:18:53,110 INFO L82 PathProgramCache]: Analyzing trace with hash -920031726, now seen corresponding path program 1 times [2018-11-23 01:18:53,110 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 01:18:53,110 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 01:18:53,111 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 01:18:53,111 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 01:18:53,111 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 01:18:53,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 01:18:53,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 01:18:53,198 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(~someUnaryDOUBLEoperation(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~union3;havoc #t~mem2;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~mem4;havoc #t~union5;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~mem6;havoc #t~union7;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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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(~someUnaryDOUBLEoperation(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~union3; [L31] havoc #t~mem2; [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~mem4; [L36] havoc #t~union5; [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~mem6; [L37] havoc #t~union7; [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 01:18:53,242 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 01:18:53 BoogieIcfgContainer [2018-11-23 01:18:53,242 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 01:18:53,243 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 01:18:53,243 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 01:18:53,243 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 01:18:53,244 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:52" (3/4) ... [2018-11-23 01:18:53,247 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 01:18:53,248 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 01:18:53,248 INFO L168 Benchmark]: Toolchain (without parser) took 1157.19 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 142.6 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -107.7 MB). Peak memory consumption was 34.9 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,250 INFO L168 Benchmark]: CDTParser took 0.10 ms. Allocated memory is still 1.0 GB. Free memory is still 985.6 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 01:18:53,250 INFO L168 Benchmark]: CACSL2BoogieTranslator took 271.30 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 142.6 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -184.2 MB). Peak memory consumption was 31.3 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,251 INFO L168 Benchmark]: Boogie Procedure Inliner took 24.17 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: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,251 INFO L168 Benchmark]: Boogie Preprocessor took 36.56 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: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,252 INFO L168 Benchmark]: RCFGBuilder took 445.82 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.1 MB). Peak memory consumption was 36.1 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,252 INFO L168 Benchmark]: TraceAbstraction took 370.90 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.0 MB). Peak memory consumption was 35.0 MB. Max. memory is 11.5 GB. [2018-11-23 01:18:53,253 INFO L168 Benchmark]: Witness Printer took 5.21 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 01:18:53,256 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.6 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 271.30 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 142.6 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -184.2 MB). Peak memory consumption was 31.3 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 24.17 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: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 36.56 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: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 445.82 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.1 MB). Peak memory consumption was 36.1 MB. Max. memory is 11.5 GB. * TraceAbstraction took 370.90 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.0 MB). Peak memory consumption was 35.0 MB. Max. memory is 11.5 GB. * Witness Printer took 5.21 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 01:18:54,756 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 01:18:54,757 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 01:18:54,766 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 01:18:54,766 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 01:18:54,767 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 01:18:54,767 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 01:18:54,769 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 01:18:54,770 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 01:18:54,770 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 01:18:54,771 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 01:18:54,771 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 01:18:54,772 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 01:18:54,773 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 01:18:54,774 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 01:18:54,774 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 01:18:54,775 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 01:18:54,777 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 01:18:54,778 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 01:18:54,779 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 01:18:54,780 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 01:18:54,781 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 01:18:54,782 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 01:18:54,783 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 01:18:54,783 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 01:18:54,783 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 01:18:54,785 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 01:18:54,785 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 01:18:54,786 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 01:18:54,787 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 01:18:54,787 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 01:18:54,787 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 01:18:54,787 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 01:18:54,787 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 01:18:54,788 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 01:18:54,788 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 01:18:54,789 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 01:18:54,799 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 01:18:54,799 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 01:18:54,800 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 01:18:54,800 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 01:18:54,801 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 01:18:54,801 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 01:18:54,801 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 01:18:54,801 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 01:18:54,801 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 01:18:54,801 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 01:18:54,801 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 01:18:54,802 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 01:18:54,803 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 01:18:54,803 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 01:18:54,803 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 01:18:54,803 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 01:18:54,803 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 01:18:54,803 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 01:18:54,803 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 01:18:54,804 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 01:18:54,804 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_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 -> c6a2c9a76eae0e8993608269b8bc800503d7af17 [2018-11-23 01:18:54,835 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 01:18:54,844 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 01:18:54,847 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 01:18:54,848 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 01:18:54,848 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 01:18:54,849 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:54,893 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/dc7164b61/909591d4ce89419e882d8414da008a50/FLAGf50e5ce2c [2018-11-23 01:18:55,230 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 01:18:55,231 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/sv-benchmarks/c/float-newlib/double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:55,236 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/dc7164b61/909591d4ce89419e882d8414da008a50/FLAGf50e5ce2c [2018-11-23 01:18:55,649 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/data/dc7164b61/909591d4ce89419e882d8414da008a50 [2018-11-23 01:18:55,651 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 01:18:55,652 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 01:18:55,653 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 01:18:55,653 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 01:18:55,656 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 01:18:55,656 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,658 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@65b641ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55, skipping insertion in model container [2018-11-23 01:18:55,659 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,665 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 01:18:55,685 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 01:18:55,843 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 01:18:55,848 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 01:18:55,887 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 01:18:55,907 INFO L195 MainTranslator]: Completed translation [2018-11-23 01:18:55,907 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55 WrapperNode [2018-11-23 01:18:55,907 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 01:18:55,908 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 01:18:55,908 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 01:18:55,908 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 01:18:55,913 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,922 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,927 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 01:18:55,927 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 01:18:55,927 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 01:18:55,927 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 01:18:55,970 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,970 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,973 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,974 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,988 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,996 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:55,998 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... [2018-11-23 01:18:56,001 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 01:18:56,002 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 01:18:56,002 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 01:18:56,002 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 01:18:56,003 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 01:18:56,035 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_double [2018-11-23 01:18:56,035 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_double [2018-11-23 01:18:56,035 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 01:18:56,036 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 01:18:56,036 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_double [2018-11-23 01:18:56,036 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_double [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 01:18:56,036 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 01:18:56,036 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 01:18:56,037 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 01:18:56,143 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 01:18:56,209 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 01:18:56,239 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 01:18:59,037 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 01:18:59,037 INFO L280 CfgBuilder]: Removed 14 assue(true) statements. [2018-11-23 01:18:59,038 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:59 BoogieIcfgContainer [2018-11-23 01:18:59,038 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 01:18:59,038 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 01:18:59,038 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 01:18:59,042 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 01:18:59,042 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 01:18:55" (1/3) ... [2018-11-23 01:18:59,042 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@193f93e6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:18:59, skipping insertion in model container [2018-11-23 01:18:59,043 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:18:55" (2/3) ... [2018-11-23 01:18:59,043 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@193f93e6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:18:59, skipping insertion in model container [2018-11-23 01:18:59,043 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:59" (3/3) ... [2018-11-23 01:18:59,044 INFO L112 eAbstractionObserver]: Analyzing ICFG double_req_bl_1122b_true-unreach-call.c [2018-11-23 01:18:59,053 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 01:18:59,058 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 01:18:59,071 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 01:18:59,096 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 01:18:59,097 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 01:18:59,097 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 01:18:59,097 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 01:18:59,097 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 01:18:59,097 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 01:18:59,097 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 01:18:59,098 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 01:18:59,098 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 01:18:59,112 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states. [2018-11-23 01:18:59,116 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-23 01:18:59,116 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 01:18:59,117 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 01:18:59,118 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 01:18:59,122 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 01:18:59,122 INFO L82 PathProgramCache]: Analyzing trace with hash 976306344, now seen corresponding path program 1 times [2018-11-23 01:18:59,125 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 01:18:59,125 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 01:18:59,130 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 01:18:59,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 01:18:59,951 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 01:18:59,967 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 01:18:59,968 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 01:18:59,989 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 01:18:59,989 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 01:18:59,991 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 01:18:59,999 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 01:18:59,999 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 01:19:00,000 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 2 states. [2018-11-23 01:19:00,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 01:19:00,017 INFO L93 Difference]: Finished difference Result 126 states and 208 transitions. [2018-11-23 01:19:00,017 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 01:19:00,018 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 21 [2018-11-23 01:19:00,018 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 01:19:00,027 INFO L225 Difference]: With dead ends: 126 [2018-11-23 01:19:00,027 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 01:19:00,030 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 01:19:00,045 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 01:19:00,058 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 63. [2018-11-23 01:19:00,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 01:19:00,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 89 transitions. [2018-11-23 01:19:00,062 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 89 transitions. Word has length 21 [2018-11-23 01:19:00,062 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 01:19:00,062 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 89 transitions. [2018-11-23 01:19:00,062 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 01:19:00,062 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 89 transitions. [2018-11-23 01:19:00,063 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 01:19:00,063 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 01:19:00,063 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 01:19:00,064 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 01:19:00,065 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 01:19:00,065 INFO L82 PathProgramCache]: Analyzing trace with hash -2037518261, now seen corresponding path program 1 times [2018-11-23 01:19:00,065 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 01:19:00,066 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 01:19:00,078 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 01:19:00,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 01:19:00,907 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 01:19:03,229 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 01:19:05,475 WARN L854 $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 true [2018-11-23 01:19:16,574 WARN L180 SmtUtils]: Spent 1.79 s on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 01:19:28,964 WARN L180 SmtUtils]: Spent 1.44 s on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 01:19:40,588 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 01:19:40,589 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 01:19:40,605 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 01:19:40,605 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 01:19:40,606 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 01:19:40,607 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 01:19:40,607 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=43, Unknown=2, NotChecked=12, Total=72 [2018-11-23 01:19:40,607 INFO L87 Difference]: Start difference. First operand 63 states and 89 transitions. Second operand 9 states. [2018-11-23 01:20:10,496 WARN L180 SmtUtils]: Spent 3.98 s on a formula simplification that was a NOOP. DAG size: 16 [2018-11-23 01:20:13,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 01:20:13,199 INFO L93 Difference]: Finished difference Result 72 states and 98 transitions. [2018-11-23 01:20:13,200 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 01:20:13,200 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 23 [2018-11-23 01:20:13,200 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 01:20:13,201 INFO L225 Difference]: With dead ends: 72 [2018-11-23 01:20:13,202 INFO L226 Difference]: Without dead ends: 65 [2018-11-23 01:20:13,202 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 48.9s TimeCoverageRelationStatistics Valid=19, Invalid=55, Unknown=2, NotChecked=14, Total=90 [2018-11-23 01:20:13,203 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2018-11-23 01:20:13,208 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 63. [2018-11-23 01:20:13,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 01:20:13,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 88 transitions. [2018-11-23 01:20:13,210 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 88 transitions. Word has length 23 [2018-11-23 01:20:13,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 01:20:13,210 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 88 transitions. [2018-11-23 01:20:13,210 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 01:20:13,210 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 88 transitions. [2018-11-23 01:20:13,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 01:20:13,211 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 01:20:13,211 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 01:20:13,211 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 01:20:13,211 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 01:20:13,211 INFO L82 PathProgramCache]: Analyzing trace with hash 1706768295, now seen corresponding path program 1 times [2018-11-23 01:20:13,212 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 01:20:13,212 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/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 01:20:13,215 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 01:20:13,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 01:20:13,283 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 01:20:13,390 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 01:20:13,390 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 01:20:13,402 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 01:20:13,402 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 01:20:13,403 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 01:20:13,403 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 01:20:13,403 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 01:20:13,403 INFO L87 Difference]: Start difference. First operand 63 states and 88 transitions. Second operand 7 states. [2018-11-23 01:20:14,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 01:20:14,540 INFO L93 Difference]: Finished difference Result 67 states and 92 transitions. [2018-11-23 01:20:14,572 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 01:20:14,572 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 25 [2018-11-23 01:20:14,572 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 01:20:14,573 INFO L225 Difference]: With dead ends: 67 [2018-11-23 01:20:14,573 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 01:20:14,573 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2018-11-23 01:20:14,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 01:20:14,574 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 01:20:14,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 01:20:14,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 01:20:14,574 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 25 [2018-11-23 01:20:14,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 01:20:14,574 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 01:20:14,574 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 01:20:14,575 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 01:20:14,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 01:20:14,578 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 01:20:16,444 WARN L180 SmtUtils]: Spent 1.69 s on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 01:20:16,629 INFO L451 ceAbstractionStarter]: At program point isnan_doubleENTRY(line 16) the Hoare annotation is: true [2018-11-23 01:20:16,629 INFO L448 ceAbstractionStarter]: For program point isnan_doubleEXIT(line 16) no Hoare annotation was computed. [2018-11-23 01:20:16,629 INFO L448 ceAbstractionStarter]: For program point isnan_doubleFINAL(line 16) no Hoare annotation was computed. [2018-11-23 01:20:16,630 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 01:20:16,630 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 01:20:16,630 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 01:20:16,630 INFO L448 ceAbstractionStarter]: For program point L118(lines 118 119) no Hoare annotation was computed. [2018-11-23 01:20:16,630 INFO L448 ceAbstractionStarter]: For program point L118-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,630 INFO L448 ceAbstractionStarter]: For program point L69-2(lines 69 70) no Hoare annotation was computed. [2018-11-23 01:20:16,630 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 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L152(lines 152 157) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L152-1(lines 140 159) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L152-2(lines 152 157) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L53(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point fmod_doubleFINAL(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L120-1(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L54(lines 54 60) no Hoare annotation was computed. [2018-11-23 01:20:16,631 INFO L448 ceAbstractionStarter]: For program point L104(lines 104 105) no Hoare annotation was computed. [2018-11-23 01:20:16,632 INFO L448 ceAbstractionStarter]: For program point L104-2(lines 101 115) no Hoare annotation was computed. [2018-11-23 01:20:16,632 INFO L448 ceAbstractionStarter]: For program point L55-2(lines 55 56) no Hoare annotation was computed. [2018-11-23 01:20:16,632 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 01:20:16,632 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 01:20:16,632 INFO L448 ceAbstractionStarter]: For program point L91(lines 91 97) no Hoare annotation was computed. [2018-11-23 01:20:16,632 INFO L448 ceAbstractionStarter]: For program point L91-2(lines 87 98) no Hoare annotation was computed. [2018-11-23 01:20:16,632 INFO L448 ceAbstractionStarter]: For program point L58-2(lines 58 59) no Hoare annotation was computed. [2018-11-23 01:20:16,633 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 01:20:16,633 INFO L451 ceAbstractionStarter]: At program point fmod_doubleENTRY(lines 23 161) the Hoare annotation is: true [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L142(lines 142 151) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L43(lines 43 45) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L27-1(lines 27 32) no Hoare annotation was computed. [2018-11-23 01:20:16,633 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 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L110(lines 110 111) no Hoare annotation was computed. [2018-11-23 01:20:16,633 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 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L127-3(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L145(lines 145 151) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L79(lines 79 85) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L46(lines 46 51) no Hoare annotation was computed. [2018-11-23 01:20:16,633 INFO L448 ceAbstractionStarter]: For program point L79-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L46-2(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L47(lines 47 48) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L64(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L65(lines 65 71) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point fmod_doubleEXIT(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L49(lines 49 50) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L132(lines 132 159) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L33(lines 33 38) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L33-1(lines 23 161) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L66-2(lines 66 67) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L33-2(lines 33 38) no Hoare annotation was computed. [2018-11-23 01:20:16,634 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 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L134-1(lines 134 139) no Hoare annotation was computed. [2018-11-23 01:20:16,634 INFO L448 ceAbstractionStarter]: For program point L101-1(lines 101 115) no Hoare annotation was computed. [2018-11-23 01:20:16,635 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 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point L101-3(lines 101 115) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L451 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-23 01:20:16,635 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 176) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point L176(line 176) no Hoare annotation was computed. [2018-11-23 01:20:16,635 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 (fp.neg ((_ to_fp 11 53) roundNearestTiesToEven 1.0)) (_ +zero 11 53)) fmod_double_~y))) (fp.div roundNearestTiesToEven .cse0 .cse0)) main_~res~0)) [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point L175-1(lines 175 178) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 163 181) the Hoare annotation is: true [2018-11-23 01:20:16,635 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 163 181) no Hoare annotation was computed. [2018-11-23 01:20:16,635 INFO L444 ceAbstractionStarter]: At program point L172(line 172) the Hoare annotation is: (= (fp.div roundNearestTiesToEven (fp.neg ((_ to_fp 11 53) roundNearestTiesToEven 1.0)) (_ +zero 11 53)) main_~x~0) [2018-11-23 01:20:16,636 INFO L448 ceAbstractionStarter]: For program point L172-1(line 172) no Hoare annotation was computed. [2018-11-23 01:20:16,636 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 163 181) no Hoare annotation was computed. [2018-11-23 01:20:16,640 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,640 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,641 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,642 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,642 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,646 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,646 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,646 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,647 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,648 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,649 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,649 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,649 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,649 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,649 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,650 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,650 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,650 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,650 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,650 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,651 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,651 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,651 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,652 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,653 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,653 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,653 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,654 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,654 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,654 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,654 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,655 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,655 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,655 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,655 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,655 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,656 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,656 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,656 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,656 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,657 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,657 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,657 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,657 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,657 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,658 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,658 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,658 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,658 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,659 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,659 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,659 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,659 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,659 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,660 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,660 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,660 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,660 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,661 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,661 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,661 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,661 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,662 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,662 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,662 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,662 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,663 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,663 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,663 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,663 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,663 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,664 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,665 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,665 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,665 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,665 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,665 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,666 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,666 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,666 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,667 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,667 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,667 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,667 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,667 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,668 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,668 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,668 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,668 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,669 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,670 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 01:20:16 BoogieIcfgContainer [2018-11-23 01:20:16,670 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 01:20:16,671 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 01:20:16,671 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 01:20:16,671 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 01:20:16,671 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:18:59" (3/4) ... [2018-11-23 01:20:16,675 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 01:20:16,679 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure isnan_double [2018-11-23 01:20:16,680 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2018-11-23 01:20:16,680 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure fmod_double [2018-11-23 01:20:16,680 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2018-11-23 01:20:16,684 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 19 nodes and edges [2018-11-23 01:20:16,684 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 10 nodes and edges [2018-11-23 01:20:16,684 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2018-11-23 01:20:16,684 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2018-11-23 01:20:16,701 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: \old(x) == x [2018-11-23 01:20:16,713 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_60186dcf-52df-4e4c-939c-7df14ab7fa15/bin-2019/uautomizer/witness.graphml [2018-11-23 01:20:16,713 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 01:20:16,713 INFO L168 Benchmark]: Toolchain (without parser) took 81061.80 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 128.5 MB). Free memory was 949.7 MB in the beginning and 940.1 MB in the end (delta: 9.6 MB). Peak memory consumption was 138.1 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,714 INFO L168 Benchmark]: CDTParser took 0.16 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 01:20:16,714 INFO L168 Benchmark]: CACSL2BoogieTranslator took 254.61 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,715 INFO L168 Benchmark]: Boogie Procedure Inliner took 19.09 ms. Allocated memory is still 1.0 GB. Free memory was 933.6 MB in the beginning and 928.3 MB in the end (delta: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,715 INFO L168 Benchmark]: Boogie Preprocessor took 74.36 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 128.5 MB). Free memory was 928.3 MB in the beginning and 1.1 GB in the end (delta: -188.4 MB). Peak memory consumption was 15.5 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,715 INFO L168 Benchmark]: RCFGBuilder took 3036.18 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.3 MB). Peak memory consumption was 37.3 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,716 INFO L168 Benchmark]: TraceAbstraction took 77631.94 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 940.1 MB in the end (delta: 139.3 MB). Peak memory consumption was 139.3 MB. Max. memory is 11.5 GB. [2018-11-23 01:20:16,716 INFO L168 Benchmark]: Witness Printer took 42.41 ms. Allocated memory is still 1.2 GB. Free memory is still 940.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 01:20:16,718 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.16 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 254.61 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 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 19.09 ms. Allocated memory is still 1.0 GB. Free memory was 933.6 MB in the beginning and 928.3 MB in the end (delta: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 74.36 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 128.5 MB). Free memory was 928.3 MB in the beginning and 1.1 GB in the end (delta: -188.4 MB). Peak memory consumption was 15.5 MB. Max. memory is 11.5 GB. * RCFGBuilder took 3036.18 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.3 MB). Peak memory consumption was 37.3 MB. Max. memory is 11.5 GB. * TraceAbstraction took 77631.94 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 940.1 MB in the end (delta: 139.3 MB). Peak memory consumption was 139.3 MB. Max. memory is 11.5 GB. * Witness Printer took 42.41 ms. Allocated memory is still 1.2 GB. Free memory is still 940.1 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 01:20:16,729 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,729 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,729 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,729 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,729 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,730 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,730 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,730 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,730 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,730 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,731 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,731 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,731 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,731 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,732 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 01:20:16,733 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,733 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,733 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,733 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,734 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,735 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,736 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,736 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,736 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,736 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 01:20:16,737 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,737 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,737 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,737 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,737 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,738 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,738 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,738 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,738 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,738 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 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,739 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,740 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,740 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,740 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,740 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,740 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,741 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,742 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,742 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 01:20:16,742 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,742 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,742 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,743 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,743 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,743 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,743 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,743 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,744 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,744 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 01:20:16,744 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,744 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,744 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,744 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,745 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,746 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,747 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,747 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,747 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,747 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 01:20:16,748 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,748 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,748 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,748 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,748 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,749 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,749 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,749 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,749 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_q#valueAsBitvector_4,QUANTIFIED] [2018-11-23 01:20:16,749 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, 77.5s OverallTime, 3 OverallIterations, 1 TraceHistogramMax, 33.8s AutomataDifference, 0.0s DeadEndRemovalTime, 2.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 245 SDtfs, 218 SDslu, 590 SDs, 0 SdLazy, 129 SolverSat, 5 SolverUnsat, 3 SolverUnknown, 0 SolverNotchecked, 20.5s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 71 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 49.2s 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, 298 HoareAnnotationTreeSize, 18 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 2.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 1.5s SatisfiabilityAnalysisTime, 39.9s InterpolantComputationTime, 69 NumberOfCodeBlocks, 69 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 66 ConstructedInterpolants, 13 QuantifiedInterpolants, 8236 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! [MP z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process Received shutdown request...