./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/float_req_bl_1121b_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_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 73dc70fc086318c728ead326eb8ef835fee9f9a2 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ 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_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 73dc70fc086318c728ead326eb8ef835fee9f9a2 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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 13:19:58,557 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 13:19:58,558 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 13:19:58,565 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 13:19:58,565 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 13:19:58,566 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 13:19:58,566 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 13:19:58,567 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 13:19:58,568 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 13:19:58,569 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 13:19:58,569 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 13:19:58,570 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 13:19:58,570 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 13:19:58,571 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 13:19:58,572 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 13:19:58,572 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 13:19:58,573 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 13:19:58,574 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 13:19:58,575 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 13:19:58,576 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 13:19:58,577 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 13:19:58,578 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 13:19:58,580 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 13:19:58,580 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 13:19:58,580 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 13:19:58,581 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 13:19:58,581 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 13:19:58,582 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 13:19:58,582 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 13:19:58,583 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 13:19:58,583 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 13:19:58,584 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 13:19:58,584 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 13:19:58,584 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 13:19:58,585 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 13:19:58,585 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 13:19:58,586 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 13:19:58,596 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 13:19:58,596 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 13:19:58,597 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 13:19:58,597 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 13:19:58,597 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 13:19:58,597 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 13:19:58,598 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 13:19:58,598 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 13:19:58,599 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 13:19:58,599 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 13:19:58,600 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 13:19:58,600 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 13:19:58,600 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_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 -> 73dc70fc086318c728ead326eb8ef835fee9f9a2 [2018-11-23 13:19:58,621 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 13:19:58,629 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 13:19:58,631 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 13:19:58,632 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 13:19:58,632 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 13:19:58,633 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:19:58,669 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/eb5f2e898/9a80b0675bed4445b6f3b1737abbd9ac/FLAGb6777a00f [2018-11-23 13:19:59,001 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 13:19:59,001 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:19:59,007 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/eb5f2e898/9a80b0675bed4445b6f3b1737abbd9ac/FLAGb6777a00f [2018-11-23 13:19:59,018 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/eb5f2e898/9a80b0675bed4445b6f3b1737abbd9ac [2018-11-23 13:19:59,021 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 13:19:59,022 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 13:19:59,023 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 13:19:59,023 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 13:19:59,026 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 13:19:59,027 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,029 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5c8670d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59, skipping insertion in model container [2018-11-23 13:19:59,029 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,038 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 13:19:59,058 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 13:19:59,206 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 13:19:59,210 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 13:19:59,235 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 13:19:59,248 INFO L195 MainTranslator]: Completed translation [2018-11-23 13:19:59,248 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59 WrapperNode [2018-11-23 13:19:59,248 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 13:19:59,249 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 13:19:59,249 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 13:19:59,249 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 13:19:59,289 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:19:59" (1/1) ... [2018-11-23 13:19:59,297 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:19:59" (1/1) ... [2018-11-23 13:19:59,304 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 13:19:59,304 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 13:19:59,304 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 13:19:59,304 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 13:19:59,310 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,310 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,313 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,313 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,322 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,328 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,330 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... [2018-11-23 13:19:59,332 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 13:19:59,332 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 13:19:59,332 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 13:19:59,332 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 13:19:59,333 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 13:19:59,366 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 13:19:59,366 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 13:19:59,367 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 13:19:59,367 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 13:19:59,367 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 13:19:59,368 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 13:19:59,368 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 13:19:59,368 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 13:19:59,368 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 13:19:59,368 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_float [2018-11-23 13:19:59,368 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_float [2018-11-23 13:19:59,368 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 13:19:59,638 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 13:19:59,638 INFO L280 CfgBuilder]: Removed 12 assue(true) statements. [2018-11-23 13:19:59,639 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:19:59 BoogieIcfgContainer [2018-11-23 13:19:59,639 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 13:19:59,640 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 13:19:59,640 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 13:19:59,642 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 13:19:59,642 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 01:19:59" (1/3) ... [2018-11-23 13:19:59,642 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68f3e325 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:19:59, skipping insertion in model container [2018-11-23 13:19:59,642 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:19:59" (2/3) ... [2018-11-23 13:19:59,643 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68f3e325 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:19:59, skipping insertion in model container [2018-11-23 13:19:59,643 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:19:59" (3/3) ... [2018-11-23 13:19:59,644 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:19:59,650 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 13:19:59,655 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 13:19:59,664 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 13:19:59,685 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 13:19:59,685 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 13:19:59,685 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 13:19:59,685 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 13:19:59,686 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 13:19:59,686 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 13:19:59,686 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 13:19:59,686 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 13:19:59,686 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 13:19:59,698 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states. [2018-11-23 13:19:59,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 13:19:59,703 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 13:19:59,704 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 13:19:59,705 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 13:19:59,709 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 13:19:59,709 INFO L82 PathProgramCache]: Analyzing trace with hash -348005672, now seen corresponding path program 1 times [2018-11-23 13:19:59,710 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 13:19:59,710 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 13:19:59,739 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 13:19:59,739 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 13:19:59,739 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 13:19:59,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 13:19:59,801 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 13:19:59,803 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 13:19:59,803 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 13:19:59,806 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 13:19:59,813 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 13:19:59,813 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 13:19:59,815 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 2 states. [2018-11-23 13:19:59,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 13:19:59,831 INFO L93 Difference]: Finished difference Result 102 states and 158 transitions. [2018-11-23 13:19:59,831 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 13:19:59,832 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 22 [2018-11-23 13:19:59,832 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 13:19:59,839 INFO L225 Difference]: With dead ends: 102 [2018-11-23 13:19:59,839 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 13:19:59,841 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 13:19:59,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 13:19:59,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2018-11-23 13:19:59,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 13:19:59,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 66 transitions. [2018-11-23 13:19:59,866 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 66 transitions. Word has length 22 [2018-11-23 13:19:59,866 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 13:19:59,866 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 66 transitions. [2018-11-23 13:19:59,867 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 13:19:59,867 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 66 transitions. [2018-11-23 13:19:59,868 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 13:19:59,868 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 13:19:59,868 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 13:19:59,868 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 13:19:59,869 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 13:19:59,869 INFO L82 PathProgramCache]: Analyzing trace with hash 1100584309, now seen corresponding path program 1 times [2018-11-23 13:19:59,869 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 13:19:59,869 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 13:19:59,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 13:19:59,870 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 13:19:59,870 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 13:19:59,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 13:19:59,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 13:19:59,953 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)|=6442450956, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450958.0, |~#Zero_fmod~0.base|=6442450956, |~#Zero_fmod~0.offset|=6442450952, ~one_fmod~0=6442450958.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(8);call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450956, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450958.0, |~#Zero_fmod~0.base|=6442450955, |~#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)|=6442450956, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450958.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #187#return; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x~0 := #t~nondet12;havoc #t~nondet12;~y~0 := ~someUnaryFLOAToperation(0.0); VAL [main_~x~0=6442450949.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#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; VAL [fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4);call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4);call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_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, ~#gf_u~0.base, ~#gf_u~0.offset, 4);havoc #t~mem0;havoc #t~union1;call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset);havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [fmod_float_~hx~0=3, fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_float_~hx~0=3, fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4);call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4);call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4);~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4);havoc #t~union3;havoc #t~mem2;call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset);havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [fmod_float_~hx~0=3, fmod_float_~hy~0=(- 2147483648), fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_float_~hx~0=3, fmod_float_~hy~0=(- 2147483648), fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#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_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040;#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [fmod_float_~hx~0=2139095040, fmod_float_~hy~0=2139095041, fmod_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [fmod_float_~hx~0=2139095040, fmod_float_~hy~0=2139095041, fmod_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=6442450954.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #191#return; VAL [main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret13|=6442450948.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~res~0 := #t~ret13;havoc #t~ret13; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret14 := isnan_float(~res~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x := #in~x;#res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [isnan_float_~x=6442450948.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |isnan_float_#res|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [isnan_float_~x=6442450948.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |isnan_float_#res|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #193#return; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret14|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret14|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume 0 == #t~ret14;havoc #t~ret14; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !false; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=6442450954.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450955, |~#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)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450955, ~#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)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450955, ~#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=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(#t~union1, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset); [L21] havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L26] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34-L35] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040; [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L17-L105] ensures true; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L108] ensures true; VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121-L124] assume 0 == #t~ret14; [L121] havoc #t~ret14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] ----- ----- 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)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450956, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450955, ~#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)=6442450956, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0.base=6442450955, ~#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=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(#t~union1, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset); [L21] havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L26] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34-L35] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040; [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L17-L105] ensures true; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L108] ensures true; VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121-L124] assume 0 == #t~ret14; [L121] havoc #t~ret14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450955, ~#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=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] COND TRUE 0 == #t~ret14 [L121] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] ----- ----- 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)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450955, ~#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=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] COND TRUE 0 == #t~ret14 [L121] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450955, ~#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=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] COND TRUE 0 == #t~ret14 [L121] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] ----- ----- 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)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450956, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450958E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450956, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450958E9, ~#Zero_fmod~0!base=6442450955, ~#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=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9] [L118] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=6.442450954E9] [L30] ~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); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=6.442450954E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=6.442450954E9] [L118] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L118] ~res~0 := #t~ret13; [L118] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L121] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L121] COND TRUE 0 == #t~ret14 [L121] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L122] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=6.442450954E9] [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450958, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450956, one_fmod=1, Zero_fmod={6442450955:0}] [L116] float x = __VERIFIER_nondet_float(); [L117] float y = -0.0f; VAL [one_fmod=1, x=6442450949, Zero_fmod={6442450955:0}] [L118] CALL, EXPR fmod_float(x, y) VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, Zero_fmod={6442450955:0}] [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, sx=-1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [\old(x)=6442450949, \old(y)=6442450954, hx=2139095040, hy=2139095041, one_fmod=1, sx=-1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L118] RET, EXPR fmod_float(x, y) VAL [fmod_float(x, y)=6442450948, one_fmod=1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L118] float res = fmod_float(x, y); [L121] CALL, EXPR isnan_float(res) VAL [\old(x)=6442450948, one_fmod=1, Zero_fmod={6442450955:0}] [L108] return x != x; VAL [\old(x)=6442450948, \result=0, one_fmod=1, x=6442450948, Zero_fmod={6442450955:0}] [L121] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_fmod=1, res=6442450948, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L121] COND TRUE !isnan_float(res) [L122] __VERIFIER_error() VAL [one_fmod=1, res=6442450948, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] ----- [2018-11-23 13:19:59,998 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 01:19:59 BoogieIcfgContainer [2018-11-23 13:19:59,998 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 13:19:59,999 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 13:19:59,999 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 13:19:59,999 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 13:19:59,999 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:19:59" (3/4) ... [2018-11-23 13:20:00,003 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 13:20:00,003 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 13:20:00,003 INFO L168 Benchmark]: Toolchain (without parser) took 982.38 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.4 MB). Free memory was 959.3 MB in the beginning and 1.1 GB in the end (delta: -114.8 MB). Peak memory consumption was 33.6 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:00,005 INFO L168 Benchmark]: CDTParser took 0.12 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 13:20:00,005 INFO L168 Benchmark]: CACSL2BoogieTranslator took 225.69 ms. Allocated memory is still 1.0 GB. Free memory was 959.3 MB in the beginning and 945.8 MB in the end (delta: 13.4 MB). Peak memory consumption was 13.4 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:00,006 INFO L168 Benchmark]: Boogie Procedure Inliner took 54.97 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.4 MB). Free memory was 945.8 MB in the beginning and 1.1 GB in the end (delta: -197.4 MB). Peak memory consumption was 14.5 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:00,006 INFO L168 Benchmark]: Boogie Preprocessor took 27.99 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 13:20:00,007 INFO L168 Benchmark]: RCFGBuilder took 306.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: 27.8 MB). Peak memory consumption was 27.8 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:00,007 INFO L168 Benchmark]: TraceAbstraction took 358.72 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: 41.3 MB). Peak memory consumption was 41.3 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:00,008 INFO L168 Benchmark]: Witness Printer took 4.19 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 13:20:00,010 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.12 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 225.69 ms. Allocated memory is still 1.0 GB. Free memory was 959.3 MB in the beginning and 945.8 MB in the end (delta: 13.4 MB). Peak memory consumption was 13.4 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 54.97 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.4 MB). Free memory was 945.8 MB in the beginning and 1.1 GB in the end (delta: -197.4 MB). Peak memory consumption was 14.5 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 27.99 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 306.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: 27.8 MB). Peak memory consumption was 27.8 MB. Max. memory is 11.5 GB. * TraceAbstraction took 358.72 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: 41.3 MB). Peak memory consumption was 41.3 MB. Max. memory is 11.5 GB. * Witness Printer took 4.19 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: 122]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 108, overapproximation of someUnaryDOUBLEoperation at line 14, overapproximation of bitwiseAnd at line 30, overapproximation of someUnaryFLOAToperation at line 117, overapproximation of bitwiseXor at line 31, overapproximation of someBinaryArithmeticFLOAToperation at line 35. Possible FailurePath: [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450958, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450956, one_fmod=1, Zero_fmod={6442450955:0}] [L116] float x = __VERIFIER_nondet_float(); [L117] float y = -0.0f; VAL [one_fmod=1, x=6442450949, Zero_fmod={6442450955:0}] [L118] CALL, EXPR fmod_float(x, y) VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, Zero_fmod={6442450955:0}] [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [\old(x)=6442450949, \old(y)=6442450954, one_fmod=1, sx=-1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [\old(x)=6442450949, \old(y)=6442450954, hx=2139095040, hy=2139095041, one_fmod=1, sx=-1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L118] RET, EXPR fmod_float(x, y) VAL [fmod_float(x, y)=6442450948, one_fmod=1, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L118] float res = fmod_float(x, y); [L121] CALL, EXPR isnan_float(res) VAL [\old(x)=6442450948, one_fmod=1, Zero_fmod={6442450955:0}] [L108] return x != x; VAL [\old(x)=6442450948, \result=0, one_fmod=1, x=6442450948, Zero_fmod={6442450955:0}] [L121] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_fmod=1, res=6442450948, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] [L121] COND TRUE !isnan_float(res) [L122] __VERIFIER_error() VAL [one_fmod=1, res=6442450948, x=6442450949, y=6442450954, Zero_fmod={6442450955:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 55 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 70 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=55occurred 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 13:20:01,435 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 13:20:01,436 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 13:20:01,445 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 13:20:01,445 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 13:20:01,446 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 13:20:01,447 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 13:20:01,448 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 13:20:01,449 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 13:20:01,449 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 13:20:01,450 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 13:20:01,450 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 13:20:01,451 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 13:20:01,452 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 13:20:01,452 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 13:20:01,453 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 13:20:01,453 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 13:20:01,455 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 13:20:01,456 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 13:20:01,457 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 13:20:01,458 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 13:20:01,458 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 13:20:01,460 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 13:20:01,460 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 13:20:01,460 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 13:20:01,461 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 13:20:01,462 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 13:20:01,462 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 13:20:01,463 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 13:20:01,463 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 13:20:01,463 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 13:20:01,464 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 13:20:01,464 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 13:20:01,464 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 13:20:01,465 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 13:20:01,465 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 13:20:01,465 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 13:20:01,475 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 13:20:01,476 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 13:20:01,476 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 13:20:01,476 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 13:20:01,477 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 13:20:01,477 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 13:20:01,477 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 13:20:01,477 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 13:20:01,477 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 13:20:01,478 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 13:20:01,479 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 13:20:01,479 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 13:20:01,480 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 13:20:01,480 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 13:20:01,481 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_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 -> 73dc70fc086318c728ead326eb8ef835fee9f9a2 [2018-11-23 13:20:01,510 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 13:20:01,519 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 13:20:01,521 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 13:20:01,522 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 13:20:01,523 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 13:20:01,523 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:20:01,570 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/bc5d12627/3d07fd9292f74555b20542f1214e6a05/FLAG401f66626 [2018-11-23 13:20:01,896 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 13:20:01,897 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/sv-benchmarks/c/float-newlib/float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:20:01,901 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/bc5d12627/3d07fd9292f74555b20542f1214e6a05/FLAG401f66626 [2018-11-23 13:20:02,326 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/data/bc5d12627/3d07fd9292f74555b20542f1214e6a05 [2018-11-23 13:20:02,328 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 13:20:02,329 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 13:20:02,329 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 13:20:02,329 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 13:20:02,332 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 13:20:02,333 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,335 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5cd7030e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02, skipping insertion in model container [2018-11-23 13:20:02,335 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,341 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 13:20:02,356 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 13:20:02,515 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 13:20:02,519 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 13:20:02,547 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 13:20:02,564 INFO L195 MainTranslator]: Completed translation [2018-11-23 13:20:02,564 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02 WrapperNode [2018-11-23 13:20:02,564 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 13:20:02,565 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 13:20:02,565 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 13:20:02,565 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 13:20:02,572 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:20:02" (1/1) ... [2018-11-23 13:20:02,579 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:20:02" (1/1) ... [2018-11-23 13:20:02,584 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 13:20:02,584 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 13:20:02,584 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 13:20:02,584 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 13:20:02,590 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,591 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,593 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,594 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,603 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,645 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,647 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... [2018-11-23 13:20:02,650 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 13:20:02,651 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 13:20:02,651 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 13:20:02,651 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 13:20:02,652 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 13:20:02,685 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE4 [2018-11-23 13:20:02,685 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 13:20:02,685 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 13:20:02,685 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4 [2018-11-23 13:20:02,685 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 13:20:02,686 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 13:20:02,686 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 13:20:02,686 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4 [2018-11-23 13:20:02,686 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_float [2018-11-23 13:20:02,687 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_float [2018-11-23 13:20:02,687 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 13:20:02,687 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 13:20:02,868 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 13:20:04,190 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 13:20:04,190 INFO L280 CfgBuilder]: Removed 12 assue(true) statements. [2018-11-23 13:20:04,190 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:20:04 BoogieIcfgContainer [2018-11-23 13:20:04,190 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 13:20:04,191 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 13:20:04,191 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 13:20:04,192 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 13:20:04,193 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 01:20:02" (1/3) ... [2018-11-23 13:20:04,193 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5aa5233b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:20:04, skipping insertion in model container [2018-11-23 13:20:04,193 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 01:20:02" (2/3) ... [2018-11-23 13:20:04,193 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5aa5233b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 01:20:04, skipping insertion in model container [2018-11-23 13:20:04,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:20:04" (3/3) ... [2018-11-23 13:20:04,195 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1121b_true-unreach-call.c [2018-11-23 13:20:04,200 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 13:20:04,206 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 13:20:04,217 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 13:20:04,238 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 13:20:04,238 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 13:20:04,238 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 13:20:04,239 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 13:20:04,239 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 13:20:04,239 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 13:20:04,239 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 13:20:04,239 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 13:20:04,239 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 13:20:04,251 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states. [2018-11-23 13:20:04,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-23 13:20:04,255 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 13:20:04,256 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 13:20:04,257 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 13:20:04,261 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 13:20:04,261 INFO L82 PathProgramCache]: Analyzing trace with hash 1582823124, now seen corresponding path program 1 times [2018-11-23 13:20:04,263 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 13:20:04,264 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 13:20:04,268 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 13:20:04,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 13:20:04,515 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 13:20:04,531 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 13:20:04,531 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 13:20:04,543 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 13:20:04,543 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 13:20:04,545 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 13:20:04,553 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 13:20:04,553 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 13:20:04,554 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 2 states. [2018-11-23 13:20:04,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 13:20:04,568 INFO L93 Difference]: Finished difference Result 100 states and 156 transitions. [2018-11-23 13:20:04,568 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 13:20:04,569 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 21 [2018-11-23 13:20:04,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 13:20:04,578 INFO L225 Difference]: With dead ends: 100 [2018-11-23 13:20:04,578 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 13:20:04,581 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 13:20:04,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 13:20:04,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 13:20:04,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 13:20:04,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 65 transitions. [2018-11-23 13:20:04,609 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 65 transitions. Word has length 21 [2018-11-23 13:20:04,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 13:20:04,609 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 65 transitions. [2018-11-23 13:20:04,609 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 13:20:04,610 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 65 transitions. [2018-11-23 13:20:04,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 13:20:04,610 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 13:20:04,610 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 13:20:04,611 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 13:20:04,611 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 13:20:04,611 INFO L82 PathProgramCache]: Analyzing trace with hash -853861129, now seen corresponding path program 1 times [2018-11-23 13:20:04,612 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 13:20:04,612 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 13:20:04,620 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 13:20:04,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 13:20:04,853 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 13:20:07,393 WARN L180 SmtUtils]: Spent 544.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 13:20:11,895 WARN L180 SmtUtils]: Spent 421.00 ms on a formula simplification that was a NOOP. DAG size: 9 [2018-11-23 13:20:15,074 WARN L180 SmtUtils]: Spent 494.00 ms on a formula simplification that was a NOOP. DAG size: 9 [2018-11-23 13:20:17,850 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 13:20:17,851 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 13:20:17,861 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 13:20:17,861 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 13:20:17,862 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 13:20:17,862 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 13:20:17,863 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=56, Unknown=1, NotChecked=0, Total=72 [2018-11-23 13:20:17,863 INFO L87 Difference]: Start difference. First operand 50 states and 65 transitions. Second operand 9 states. [2018-11-23 13:20:29,649 WARN L180 SmtUtils]: Spent 3.64 s on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 13:20:34,268 WARN L180 SmtUtils]: Spent 948.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 13:20:38,081 WARN L180 SmtUtils]: Spent 1.20 s on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 13:20:42,052 WARN L180 SmtUtils]: Spent 1.16 s on a formula simplification that was a NOOP. DAG size: 17 [2018-11-23 13:20:44,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 13:20:44,692 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2018-11-23 13:20:44,693 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 13:20:44,693 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 23 [2018-11-23 13:20:44,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 13:20:44,694 INFO L225 Difference]: With dead ends: 57 [2018-11-23 13:20:44,694 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 13:20:44,695 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 28.0s TimeCoverageRelationStatistics Valid=33, Invalid=122, Unknown=1, NotChecked=0, Total=156 [2018-11-23 13:20:44,695 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 13:20:44,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 13:20:44,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 13:20:44,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2018-11-23 13:20:44,701 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 23 [2018-11-23 13:20:44,701 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 13:20:44,701 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2018-11-23 13:20:44,701 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 13:20:44,701 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2018-11-23 13:20:44,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 13:20:44,702 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 13:20:44,702 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 13:20:44,702 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 13:20:44,703 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 13:20:44,703 INFO L82 PathProgramCache]: Analyzing trace with hash 988405985, now seen corresponding path program 1 times [2018-11-23 13:20:44,703 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 13:20:44,703 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/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 13:20:44,706 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 13:20:44,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 13:20:44,754 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 13:20:44,812 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 13:20:44,812 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 13:20:44,819 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 13:20:44,820 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 13:20:44,820 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 13:20:44,820 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 13:20:44,820 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 13:20:44,821 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand 7 states. [2018-11-23 13:20:45,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 13:20:45,098 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2018-11-23 13:20:45,100 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 13:20:45,100 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 24 [2018-11-23 13:20:45,100 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 13:20:45,100 INFO L225 Difference]: With dead ends: 52 [2018-11-23 13:20:45,100 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 13:20:45,101 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2018-11-23 13:20:45,101 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 13:20:45,101 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 13:20:45,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 13:20:45,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 13:20:45,101 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 24 [2018-11-23 13:20:45,101 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 13:20:45,101 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 13:20:45,101 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 13:20:45,102 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 13:20:45,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 13:20:45,104 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 13:20:45,877 WARN L180 SmtUtils]: Spent 710.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 13:20:45,936 INFO L448 ceAbstractionStarter]: For program point isnan_floatFINAL(line 108) no Hoare annotation was computed. [2018-11-23 13:20:45,936 INFO L451 ceAbstractionStarter]: At program point isnan_floatENTRY(line 108) the Hoare annotation is: true [2018-11-23 13:20:45,936 INFO L448 ceAbstractionStarter]: For program point isnan_floatEXIT(line 108) no Hoare annotation was computed. [2018-11-23 13:20:45,936 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 13:20:45,936 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L451 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-23 13:20:45,937 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 110 127) the Hoare annotation is: true [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 110 127) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point L122(line 122) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L444 ceAbstractionStarter]: At program point L121(line 121) the Hoare annotation is: (and (= main_~y~0 (fp.neg (_ +zero 8 24))) (exists ((fmod_float_~x (_ FloatingPoint 8 24))) (= (let ((.cse0 (fp.mul roundNearestTiesToEven fmod_float_~x (fp.neg (_ +zero 8 24))))) (fp.div roundNearestTiesToEven .cse0 .cse0)) main_~res~0))) [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 110 127) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point L121-1(lines 121 124) no Hoare annotation was computed. [2018-11-23 13:20:45,937 INFO L444 ceAbstractionStarter]: At program point L118(line 118) the Hoare annotation is: (= main_~y~0 (fp.neg (_ +zero 8 24))) [2018-11-23 13:20:45,937 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 122) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L118-1(line 118) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point fmod_floatEXIT(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L52-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L36(lines 36 37) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L86(lines 86 103) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L20-1(lines 20 24) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L444 ceAbstractionStarter]: At program point L20-2(lines 20 24) the Hoare annotation is: (= fmod_float_~y |fmod_float_#in~y|) [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L70(lines 70 71) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L46(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point fmod_floatFINAL(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L38(lines 38 39) no Hoare annotation was computed. [2018-11-23 13:20:45,938 INFO L451 ceAbstractionStarter]: At program point fmod_floatENTRY(lines 17 105) the Hoare annotation is: true [2018-11-23 13:20:45,938 INFO L448 ceAbstractionStarter]: For program point L88-1(lines 88 92) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L444 ceAbstractionStarter]: At program point L88-2(lines 88 92) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L47-2(lines 47 48) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L444 ceAbstractionStarter]: At program point L47-3(lines 47 48) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|) (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) fmod_float_~hy~0)))) [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L97-1(lines 97 101) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L444 ceAbstractionStarter]: At program point L97-2(lines 97 101) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L97-3(lines 97 101) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L40(lines 40 44) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L40-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L65-1(lines 65 74) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L65-3(lines 65 74) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L444 ceAbstractionStarter]: At program point L82-2(lines 82 85) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L82-3(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,939 INFO L448 ceAbstractionStarter]: For program point L41-2(lines 41 42) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L444 ceAbstractionStarter]: At program point L41-3(lines 41 42) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|) (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) fmod_float_~hy~0)))) [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L25(lines 25 29) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L58-1(lines 58 63) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L25-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L25-2(lines 25 29) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L67(lines 67 73) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L34(lines 34 35) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L444 ceAbstractionStarter]: At program point L67-2(lines 65 74) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L76(lines 76 78) no Hoare annotation was computed. [2018-11-23 13:20:45,940 INFO L448 ceAbstractionStarter]: For program point L76-2(lines 17 105) no Hoare annotation was computed. [2018-11-23 13:20:45,944 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,945 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,945 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,945 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,950 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,950 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,950 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,950 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,951 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,951 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,951 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,951 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,951 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,952 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,952 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,952 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,952 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,952 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,953 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,954 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,955 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,955 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,955 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,955 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,956 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,956 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,956 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,956 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,957 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,958 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,958 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,958 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,958 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,959 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,959 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,959 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,959 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,959 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,960 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,960 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,960 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,960 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,961 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,961 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,961 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,961 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,962 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:45,963 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 01:20:45 BoogieIcfgContainer [2018-11-23 13:20:45,964 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 13:20:45,964 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 13:20:45,964 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 13:20:45,964 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 13:20:45,965 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 01:20:04" (3/4) ... [2018-11-23 13:20:45,968 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 13:20:45,973 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure isnan_float [2018-11-23 13:20:45,973 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2018-11-23 13:20:45,974 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2018-11-23 13:20:45,974 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure fmod_float [2018-11-23 13:20:45,978 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 17 nodes and edges [2018-11-23 13:20:45,978 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 7 nodes and edges [2018-11-23 13:20:45,978 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2018-11-23 13:20:45,978 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2018-11-23 13:20:45,997 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: y == \old(y) [2018-11-23 13:20:46,005 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_e3f3092d-86b3-487b-8408-a06c4b193ffd/bin-2019/uautomizer/witness.graphml [2018-11-23 13:20:46,005 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 13:20:46,006 INFO L168 Benchmark]: Toolchain (without parser) took 43677.82 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 102.2 MB). Free memory was 948.7 MB in the beginning and 927.8 MB in the end (delta: 20.8 MB). Peak memory consumption was 123.1 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:46,006 INFO L168 Benchmark]: CDTParser took 0.15 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 13:20:46,007 INFO L168 Benchmark]: CACSL2BoogieTranslator took 235.21 ms. Allocated memory is still 1.0 GB. Free memory was 948.7 MB in the beginning and 932.5 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:46,007 INFO L168 Benchmark]: Boogie Procedure Inliner took 19.10 ms. Allocated memory is still 1.0 GB. Free memory is still 932.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 13:20:46,007 INFO L168 Benchmark]: Boogie Preprocessor took 66.39 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 102.2 MB). Free memory was 932.5 MB in the beginning and 1.1 GB in the end (delta: -163.9 MB). Peak memory consumption was 21.1 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:46,007 INFO L168 Benchmark]: RCFGBuilder took 1539.54 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 38.5 MB). Peak memory consumption was 38.5 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:46,008 INFO L168 Benchmark]: TraceAbstraction took 41772.98 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 927.8 MB in the end (delta: 130.1 MB). Peak memory consumption was 130.1 MB. Max. memory is 11.5 GB. [2018-11-23 13:20:46,008 INFO L168 Benchmark]: Witness Printer took 41.59 ms. Allocated memory is still 1.1 GB. Free memory is still 927.8 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 13:20:46,010 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.15 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 235.21 ms. Allocated memory is still 1.0 GB. Free memory was 948.7 MB in the beginning and 932.5 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.10 ms. Allocated memory is still 1.0 GB. Free memory is still 932.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 66.39 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 102.2 MB). Free memory was 932.5 MB in the beginning and 1.1 GB in the end (delta: -163.9 MB). Peak memory consumption was 21.1 MB. Max. memory is 11.5 GB. * RCFGBuilder took 1539.54 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 38.5 MB). Peak memory consumption was 38.5 MB. Max. memory is 11.5 GB. * TraceAbstraction took 41772.98 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 927.8 MB in the end (delta: 130.1 MB). Peak memory consumption was 130.1 MB. Max. memory is 11.5 GB. * Witness Printer took 41.59 ms. Allocated memory is still 1.1 GB. Free memory is still 927.8 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_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 122]: 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: 97]: Loop Invariant [2018-11-23 13:20:46,015 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,016 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,016 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,016 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,016 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,017 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,017 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,017 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 82]: Loop Invariant [2018-11-23 13:20:46,017 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,017 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,018 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 41]: Loop Invariant [2018-11-23 13:20:46,019 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,019 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,019 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,019 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,019 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,020 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,020 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,020 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,020 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,020 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,021 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: ((\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y)) && (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && ~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == hy) - InvariantResult [Line: 88]: Loop Invariant [2018-11-23 13:20:46,022 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,022 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,022 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,022 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,023 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,023 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,023 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,023 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 47]: Loop Invariant [2018-11-23 13:20:46,023 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,024 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,025 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,025 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,025 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,025 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,025 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,026 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,026 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,026 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,026 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: ((\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y)) && (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && ~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == hy) - InvariantResult [Line: 65]: Loop Invariant [2018-11-23 13:20:46,027 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,027 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,027 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,027 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,028 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,028 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,028 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 13:20:46,028 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 20]: Loop Invariant Derived loop invariant: y == \old(y) - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 54 locations, 1 error locations. SAFE Result, 41.7s OverallTime, 3 OverallIterations, 1 TraceHistogramMax, 27.1s AutomataDifference, 0.0s DeadEndRemovalTime, 0.8s HoareAnnotationTime, HoareTripleCheckerStatistics: 174 SDtfs, 148 SDslu, 487 SDs, 0 SdLazy, 97 SolverSat, 8 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 11.2s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 73 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 28.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=54occurred 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, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 15 LocationsWithAnnotation, 17 PreInvPairs, 25 NumberOfFragments, 191 HoareAnnotationTreeSize, 17 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 15 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.7s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 13.1s InterpolantComputationTime, 68 NumberOfCodeBlocks, 68 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 65 ConstructedInterpolants, 8 QuantifiedInterpolants, 5747 SizeOfPredicates, 8 NumberOfNonLiveVariables, 232 ConjunctsInSsa, 18 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...