./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/float_req_bl_0620b_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_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 fd8280e6c85ab06c5ea4e924d9eaa3661cb56ac8 .............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 fd8280e6c85ab06c5ea4e924d9eaa3661cb56ac8 ..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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 08:15:05,867 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 08:15:05,869 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 08:15:05,876 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 08:15:05,876 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 08:15:05,877 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 08:15:05,878 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 08:15:05,879 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 08:15:05,880 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 08:15:05,881 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 08:15:05,881 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 08:15:05,881 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 08:15:05,882 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 08:15:05,883 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 08:15:05,883 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 08:15:05,884 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 08:15:05,884 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 08:15:05,885 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 08:15:05,886 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 08:15:05,887 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 08:15:05,888 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 08:15:05,888 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 08:15:05,890 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 08:15:05,890 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 08:15:05,890 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 08:15:05,891 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 08:15:05,891 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 08:15:05,892 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 08:15:05,892 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 08:15:05,893 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 08:15:05,893 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 08:15:05,894 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 08:15:05,894 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 08:15:05,894 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 08:15:05,895 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 08:15:05,895 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 08:15:05,895 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 08:15:05,905 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 08:15:05,905 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 08:15:05,906 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 08:15:05,906 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 08:15:05,906 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 08:15:05,906 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 08:15:05,906 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 08:15:05,907 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 08:15:05,907 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 08:15:05,908 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 08:15:05,908 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 08:15:05,909 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 08:15:05,909 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 08:15:05,910 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 08:15:05,910 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_ae090809-aead-4a4b-84ef-d997616c97fd/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 -> fd8280e6c85ab06c5ea4e924d9eaa3661cb56ac8 [2018-11-23 08:15:05,936 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 08:15:05,945 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 08:15:05,948 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 08:15:05,949 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 08:15:05,949 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 08:15:05,949 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:05,984 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/864f3cdf6/2aa439313c694ad49dc22772a6dcb4c7/FLAGd97adba19 [2018-11-23 08:15:06,393 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 08:15:06,394 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:06,399 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/864f3cdf6/2aa439313c694ad49dc22772a6dcb4c7/FLAGd97adba19 [2018-11-23 08:15:06,411 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/864f3cdf6/2aa439313c694ad49dc22772a6dcb4c7 [2018-11-23 08:15:06,414 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 08:15:06,415 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 08:15:06,415 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 08:15:06,415 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 08:15:06,418 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 08:15:06,419 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,421 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@578ae41f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06, skipping insertion in model container [2018-11-23 08:15:06,421 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,428 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 08:15:06,447 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 08:15:06,583 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:15:06,587 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 08:15:06,613 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:15:06,672 INFO L195 MainTranslator]: Completed translation [2018-11-23 08:15:06,673 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06 WrapperNode [2018-11-23 08:15:06,673 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 08:15:06,673 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 08:15:06,673 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 08:15:06,673 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 08:15:06,679 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,688 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,693 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 08:15:06,693 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 08:15:06,693 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 08:15:06,693 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 08:15:06,700 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,700 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,702 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,703 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,714 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,718 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,720 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... [2018-11-23 08:15:06,721 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 08:15:06,722 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 08:15:06,722 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 08:15:06,722 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 08:15:06,723 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 08:15:06,760 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 08:15:06,760 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 08:15:06,760 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 08:15:06,760 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 08:15:06,760 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 08:15:06,761 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 08:15:06,761 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 08:15:06,761 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_float [2018-11-23 08:15:06,761 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_float [2018-11-23 08:15:06,761 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 08:15:06,761 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 08:15:06,762 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 08:15:06,762 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 08:15:06,762 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 08:15:06,762 INFO L130 BoogieDeclarations]: Found specification of procedure __signbit_float [2018-11-23 08:15:06,762 INFO L138 BoogieDeclarations]: Found implementation of procedure __signbit_float [2018-11-23 08:15:06,762 INFO L130 BoogieDeclarations]: Found specification of procedure atan_float [2018-11-23 08:15:06,762 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_float [2018-11-23 08:15:06,763 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 08:15:07,039 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 08:15:07,039 INFO L280 CfgBuilder]: Removed 8 assue(true) statements. [2018-11-23 08:15:07,039 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:07 BoogieIcfgContainer [2018-11-23 08:15:07,039 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 08:15:07,040 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 08:15:07,040 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 08:15:07,042 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 08:15:07,042 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 08:15:06" (1/3) ... [2018-11-23 08:15:07,043 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4ab196aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:15:07, skipping insertion in model container [2018-11-23 08:15:07,043 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:06" (2/3) ... [2018-11-23 08:15:07,044 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4ab196aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:15:07, skipping insertion in model container [2018-11-23 08:15:07,044 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:07" (3/3) ... [2018-11-23 08:15:07,045 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:07,051 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 08:15:07,056 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 08:15:07,067 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 08:15:07,090 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 08:15:07,090 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 08:15:07,091 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 08:15:07,091 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 08:15:07,091 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 08:15:07,091 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 08:15:07,091 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 08:15:07,091 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 08:15:07,091 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 08:15:07,101 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states. [2018-11-23 08:15:07,106 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 08:15:07,106 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:07,106 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:15:07,108 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:07,113 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:07,113 INFO L82 PathProgramCache]: Analyzing trace with hash -1775699146, now seen corresponding path program 1 times [2018-11-23 08:15:07,115 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 08:15:07,116 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 08:15:07,148 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:15:07,148 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:07,148 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:15:07,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:07,229 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 08:15:07,231 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:07,231 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 08:15:07,234 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 08:15:07,241 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 08:15:07,242 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 08:15:07,243 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 2 states. [2018-11-23 08:15:07,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:15:07,258 INFO L93 Difference]: Finished difference Result 100 states and 142 transitions. [2018-11-23 08:15:07,259 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 08:15:07,259 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 08:15:07,260 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:15:07,266 INFO L225 Difference]: With dead ends: 100 [2018-11-23 08:15:07,266 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 08:15:07,268 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 08:15:07,278 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 08:15:07,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 08:15:07,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 08:15:07,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 61 transitions. [2018-11-23 08:15:07,295 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 61 transitions. Word has length 18 [2018-11-23 08:15:07,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:15:07,295 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 61 transitions. [2018-11-23 08:15:07,295 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 08:15:07,295 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-23 08:15:07,296 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-23 08:15:07,296 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:07,296 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:15:07,297 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:07,297 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:07,297 INFO L82 PathProgramCache]: Analyzing trace with hash 1046652015, now seen corresponding path program 1 times [2018-11-23 08:15:07,297 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 08:15:07,297 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 08:15:07,298 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:15:07,298 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:07,299 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:15:07,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 08:15:07,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 08:15:07,377 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=6442450956, |#NULL.offset|=6442450948, |old(#NULL.base)|=6442450956, |old(#NULL.offset)|=6442450948, |old(~#aT_atan~0.base)|=6442450961, |old(~#aT_atan~0.offset)|=6442450966, |old(~#atanhi_atan~0.base)|=6442450963, |old(~#atanhi_atan~0.offset)|=6442450952, |old(~#atanlo_atan~0.base)|=6442450957, |old(~#atanlo_atan~0.offset)|=6442450965, |old(~huge_atan~0)|=6442450960.0, |old(~huge_floor~0)|=6442450954.0, |old(~one_atan~0)|=6442450945.0, |old(~pi_o_2~0)|=6442450946.0, |old(~pi_o_4~0)|=6442450950.0, |old(~pi~0)|=6442450955.0, |~#aT_atan~0.base|=6442450961, |~#aT_atan~0.offset|=6442450966, |~#atanhi_atan~0.base|=6442450963, |~#atanhi_atan~0.offset|=6442450952, |~#atanlo_atan~0.base|=6442450957, |~#atanlo_atan~0.offset|=6442450965, ~huge_atan~0=6442450960.0, ~huge_floor~0=6442450954.0, ~one_atan~0=6442450945.0, ~pi_o_2~0=6442450946.0, ~pi_o_4~0=6442450950.0, ~pi~0=6442450955.0] [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~huge_floor~0 := 1.0E30;call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(16);call write~init~real(0.46364760399, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 4);call write~init~real(0.78539812565, ~#atanhi_atan~0.base, 4 + ~#atanhi_atan~0.offset, 4);call write~init~real(0.98279368877, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 4);call write~init~real(1.5707962513, ~#atanhi_atan~0.base, 12 + ~#atanhi_atan~0.offset, 4);call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(16);call write~init~real(5.012158244E-9, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 4);call write~init~real(3.7748947079E-8, ~#atanlo_atan~0.base, 4 + ~#atanlo_atan~0.offset, 4);call write~init~real(3.447321717E-8, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 4);call write~init~real(7.5497894159E-8, ~#atanlo_atan~0.base, 12 + ~#atanlo_atan~0.offset, 4);call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(44);call write~init~real(0.33333334327, ~#aT_atan~0.base, ~#aT_atan~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), ~#aT_atan~0.base, 4 + ~#aT_atan~0.offset, 4);call write~init~real(0.14285714924, ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), ~#aT_atan~0.base, 12 + ~#aT_atan~0.offset, 4);call write~init~real(0.090908870101, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), ~#aT_atan~0.base, 20 + ~#aT_atan~0.offset, 4);call write~init~real(0.066610731184, ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), ~#aT_atan~0.base, 28 + ~#aT_atan~0.offset, 4);call write~init~real(0.049768779427, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), ~#aT_atan~0.base, 36 + ~#aT_atan~0.offset, 4);call write~init~real(0.016285819933, ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 4);~one_atan~0 := 1.0;~huge_atan~0 := 1.0E30;~pi_o_4~0 := 0.78539818525;~pi_o_2~0 := 1.5707963705;~pi~0 := 3.141592741; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450956, |old(#NULL.offset)|=6442450948, |old(~#aT_atan~0.base)|=6442450961, |old(~#aT_atan~0.offset)|=6442450966, |old(~#atanhi_atan~0.base)|=6442450963, |old(~#atanhi_atan~0.offset)|=6442450952, |old(~#atanlo_atan~0.base)|=6442450957, |old(~#atanlo_atan~0.offset)|=6442450965, |old(~huge_atan~0)|=6442450960.0, |old(~huge_floor~0)|=6442450954.0, |old(~one_atan~0)|=6442450945.0, |old(~pi_o_2~0)|=6442450946.0, |old(~pi_o_4~0)|=6442450950.0, |old(~pi~0)|=6442450955.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume true; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450956, |old(#NULL.offset)|=6442450948, |old(~#aT_atan~0.base)|=6442450961, |old(~#aT_atan~0.offset)|=6442450966, |old(~#atanhi_atan~0.base)|=6442450963, |old(~#atanhi_atan~0.offset)|=6442450952, |old(~#atanlo_atan~0.base)|=6442450957, |old(~#atanlo_atan~0.offset)|=6442450965, |old(~huge_atan~0)|=6442450960.0, |old(~huge_floor~0)|=6442450954.0, |old(~one_atan~0)|=6442450945.0, |old(~pi_o_2~0)|=6442450946.0, |old(~pi_o_4~0)|=6442450950.0, |old(~pi~0)|=6442450955.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] RET #143#return; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] CALL call #t~ret30 := main(); VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] CALL call #t~ret27 := atan_float(~x~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] ~x := #in~x;havoc ~w~0;havoc ~s1~0;havoc ~s2~0;havoc ~z~0;havoc ~ix~1;havoc ~hx~0;havoc ~id~0; VAL [atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4);call write~real(~x, ~#gf_u~1.base, ~#gf_u~1.offset, 4);call #t~mem4 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4);~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union5, ~#gf_u~1.base, ~#gf_u~1.offset, 4);havoc #t~union5;havoc #t~mem4;call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset);havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [atan_float_~hx~0=(- 2147483648), atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] goto; VAL [atan_float_~hx~0=(- 2147483648), atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [atan_float_~hx~0=(- 2147483648), atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume ~ix~1 >= 1350565888; VAL [atan_float_~hx~0=(- 2147483648), atan_float_~ix~1=2139095041, atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume ~ix~1 > 2139095040;#res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [atan_float_~hx~0=(- 2147483648), atan_float_~ix~1=2139095041, atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume true; VAL [atan_float_~hx~0=(- 2147483648), atan_float_~ix~1=2139095041, atan_float_~x=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |atan_float_#in~x|=6442450953.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] RET #139#return; VAL [main_~x~0=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret27|=6442450958.0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] ~res~0 := #t~ret27;havoc #t~ret27;#t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [main_~res~0=6442450958.0, main_~x~0=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~short29|=false, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume !#t~short29; VAL [main_~res~0=6442450958.0, main_~x~0=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~short29|=false, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume !#t~short29;havoc #t~short29;havoc #t~ret28; VAL [main_~res~0=6442450958.0, main_~x~0=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] assume !false; VAL [main_~res~0=6442450958.0, main_~x~0=6442450953.0, |#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=6442450962, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=6442450964, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=6442450947, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000.0, ~huge_floor~0=1000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_o_2~0=(/ 3141592741.0 2000000000.0), ~pi_o_4~0=(/ 3141592741.0 4000000000.0), ~pi~0=(/ 3141592741.0 1000000000.0)] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450956, #NULL.offset=6442450948, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450961, ~#aT_atan~0.offset=6442450966, ~#atanhi_atan~0.base=6442450963, ~#atanhi_atan~0.offset=6442450952, ~#atanlo_atan~0.base=6442450957, ~#atanlo_atan~0.offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(16); [L29-L34] call write~init~real(0.46364760399, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(0.78539812565, ~#atanhi_atan~0.base, 4 + ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(0.98279368877, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(1.5707962513, ~#atanhi_atan~0.base, 12 + ~#atanhi_atan~0.offset, 4); [L36-L41] call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(16); [L36-L41] call write~init~real(5.012158244E-9, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(3.7748947079E-8, ~#atanlo_atan~0.base, 4 + ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(3.447321717E-8, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(7.5497894159E-8, ~#atanlo_atan~0.base, 12 + ~#atanlo_atan~0.offset, 4); [L43-L47] call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(44); [L43-L47] call write~init~real(0.33333334327, ~#aT_atan~0.base, ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), ~#aT_atan~0.base, 4 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.14285714924, ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), ~#aT_atan~0.base, 12 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.090908870101, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), ~#aT_atan~0.base, 20 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.066610731184, ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), ~#aT_atan~0.base, 28 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.049768779427, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), ~#aT_atan~0.base, 36 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.016285819933, ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L59] call write~real(~x, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] call #t~mem4 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] call write~real(#t~union5, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L58] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63-L70] assume ~ix~1 >= 1350565888; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64-L65] assume ~ix~1 > 2139095040; [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L53-L115] ensures true; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL.base=0, #NULL.offset=0, #t~short29=false, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] assume !#t~short29; VAL [#NULL.base=0, #NULL.offset=0, #t~short29=false, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141-L144] assume !#t~short29; [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450956, #NULL.offset=6442450948, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450961, ~#aT_atan~0.offset=6442450966, ~#atanhi_atan~0.base=6442450963, ~#atanhi_atan~0.offset=6442450952, ~#atanlo_atan~0.base=6442450957, ~#atanlo_atan~0.offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(16); [L29-L34] call write~init~real(0.46364760399, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(0.78539812565, ~#atanhi_atan~0.base, 4 + ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(0.98279368877, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 4); [L29-L34] call write~init~real(1.5707962513, ~#atanhi_atan~0.base, 12 + ~#atanhi_atan~0.offset, 4); [L36-L41] call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(16); [L36-L41] call write~init~real(5.012158244E-9, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(3.7748947079E-8, ~#atanlo_atan~0.base, 4 + ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(3.447321717E-8, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 4); [L36-L41] call write~init~real(7.5497894159E-8, ~#atanlo_atan~0.base, 12 + ~#atanlo_atan~0.offset, 4); [L43-L47] call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(44); [L43-L47] call write~init~real(0.33333334327, ~#aT_atan~0.base, ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), ~#aT_atan~0.base, 4 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.14285714924, ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), ~#aT_atan~0.base, 12 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.090908870101, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), ~#aT_atan~0.base, 20 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.066610731184, ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), ~#aT_atan~0.base, 28 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.049768779427, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), ~#aT_atan~0.base, 36 + ~#aT_atan~0.offset, 4); [L43-L47] call write~init~real(0.016285819933, ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450956, old(#NULL.offset)=6442450948, old(~#aT_atan~0.base)=6442450961, old(~#aT_atan~0.offset)=6442450966, old(~#atanhi_atan~0.base)=6442450963, old(~#atanhi_atan~0.offset)=6442450952, old(~#atanlo_atan~0.base)=6442450957, old(~#atanlo_atan~0.offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L59] call write~real(~x, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] call #t~mem4 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] call write~real(#t~union5, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L58] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63-L70] assume ~ix~1 >= 1350565888; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64-L65] assume ~ix~1 > 2139095040; [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L53-L115] ensures true; VAL [#in~x=6.442450953E9, #NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL.base=0, #NULL.offset=0, #t~short29=false, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] assume !#t~short29; VAL [#NULL.base=0, #NULL.offset=0, #t~short29=false, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141-L144] assume !#t~short29; [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=6442450962, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=6442450964, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=6442450947, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450956, #NULL!offset=6442450948, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450961, ~#aT_atan~0!offset=6442450966, ~#atanhi_atan~0!base=6442450963, ~#atanhi_atan~0!offset=6442450952, ~#atanlo_atan~0!base=6442450957, ~#atanlo_atan~0!offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(16); [L29-L34] FCALL call write~init~real(0.46364760399, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.78539812565, { base: ~#atanhi_atan~0!base, offset: 4 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.98279368877, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(1.5707962513, { base: ~#atanhi_atan~0!base, offset: 12 + ~#atanhi_atan~0!offset }, 4); [L36-L41] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(16); [L36-L41] FCALL call write~init~real(5.012158244E-9, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.7748947079E-8, { base: ~#atanlo_atan~0!base, offset: 4 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.447321717E-8, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(7.5497894159E-8, { base: ~#atanlo_atan~0!base, offset: 12 + ~#atanlo_atan~0!offset }, 4); [L43-L47] FCALL call ~#aT_atan~0 := #Ultimate.alloc(44); [L43-L47] FCALL call write~init~real(0.33333334327, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), { base: ~#aT_atan~0!base, offset: 4 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.14285714924, { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), { base: ~#aT_atan~0!base, offset: 12 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.090908870101, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), { base: ~#aT_atan~0!base, offset: 20 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.066610731184, { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), { base: ~#aT_atan~0!base, offset: 28 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.049768779427, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), { base: ~#aT_atan~0!base, offset: 36 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.016285819933, { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L59] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] FCALL call #t~mem4 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] FCALL call write~real(#t~union5, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L58] havoc ~#gf_u~1; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63] COND TRUE ~ix~1 >= 1350565888 VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64] COND TRUE ~ix~1 > 2139095040 [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND FALSE !(#t~short29) VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND TRUE !#t~short29 [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450956, #NULL!offset=6442450948, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450961, ~#aT_atan~0!offset=6442450966, ~#atanhi_atan~0!base=6442450963, ~#atanhi_atan~0!offset=6442450952, ~#atanlo_atan~0!base=6442450957, ~#atanlo_atan~0!offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(16); [L29-L34] FCALL call write~init~real(0.46364760399, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.78539812565, { base: ~#atanhi_atan~0!base, offset: 4 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.98279368877, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(1.5707962513, { base: ~#atanhi_atan~0!base, offset: 12 + ~#atanhi_atan~0!offset }, 4); [L36-L41] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(16); [L36-L41] FCALL call write~init~real(5.012158244E-9, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.7748947079E-8, { base: ~#atanlo_atan~0!base, offset: 4 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.447321717E-8, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(7.5497894159E-8, { base: ~#atanlo_atan~0!base, offset: 12 + ~#atanlo_atan~0!offset }, 4); [L43-L47] FCALL call ~#aT_atan~0 := #Ultimate.alloc(44); [L43-L47] FCALL call write~init~real(0.33333334327, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), { base: ~#aT_atan~0!base, offset: 4 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.14285714924, { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), { base: ~#aT_atan~0!base, offset: 12 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.090908870101, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), { base: ~#aT_atan~0!base, offset: 20 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.066610731184, { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), { base: ~#aT_atan~0!base, offset: 28 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.049768779427, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), { base: ~#aT_atan~0!base, offset: 36 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.016285819933, { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L59] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] FCALL call #t~mem4 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] FCALL call write~real(#t~union5, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L58] havoc ~#gf_u~1; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63] COND TRUE ~ix~1 >= 1350565888 VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64] COND TRUE ~ix~1 > 2139095040 [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND FALSE !(#t~short29) VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND TRUE !#t~short29 [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450956, #NULL!offset=6442450948, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450961, ~#aT_atan~0!offset=6442450966, ~#atanhi_atan~0!base=6442450963, ~#atanhi_atan~0!offset=6442450952, ~#atanlo_atan~0!base=6442450957, ~#atanlo_atan~0!offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(16); [L29-L34] FCALL call write~init~real(0.46364760399, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.78539812565, { base: ~#atanhi_atan~0!base, offset: 4 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.98279368877, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(1.5707962513, { base: ~#atanhi_atan~0!base, offset: 12 + ~#atanhi_atan~0!offset }, 4); [L36-L41] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(16); [L36-L41] FCALL call write~init~real(5.012158244E-9, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.7748947079E-8, { base: ~#atanlo_atan~0!base, offset: 4 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.447321717E-8, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(7.5497894159E-8, { base: ~#atanlo_atan~0!base, offset: 12 + ~#atanlo_atan~0!offset }, 4); [L43-L47] FCALL call ~#aT_atan~0 := #Ultimate.alloc(44); [L43-L47] FCALL call write~init~real(0.33333334327, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), { base: ~#aT_atan~0!base, offset: 4 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.14285714924, { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), { base: ~#aT_atan~0!base, offset: 12 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.090908870101, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), { base: ~#aT_atan~0!base, offset: 20 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.066610731184, { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), { base: ~#aT_atan~0!base, offset: 28 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.049768779427, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), { base: ~#aT_atan~0!base, offset: 36 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.016285819933, { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L59] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] FCALL call #t~mem4 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] FCALL call write~real(#t~union5, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L58] havoc ~#gf_u~1; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63] COND TRUE ~ix~1 >= 1350565888 VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64] COND TRUE ~ix~1 > 2139095040 [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND FALSE !(#t~short29) VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND TRUE !#t~short29 [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] ----- [2018-11-23 08:15:07,434 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450961 could not be translated for associated CType ARRAY#_11_~FLOAT# [2018-11-23 08:15:07,435 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450965 could not be translated for associated CType ARRAY#_4_~FLOAT# [2018-11-23 08:15:07,435 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450952 could not be translated for associated CType ARRAY#_4_~FLOAT# [2018-11-23 08:15:07,435 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450963 could not be translated for associated CType ARRAY#_4_~FLOAT# [2018-11-23 08:15:07,436 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450966 could not be translated for associated CType ARRAY#_11_~FLOAT# [2018-11-23 08:15:07,436 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: IntegerLiteral 6442450957 could not be translated for associated CType ARRAY#_4_~FLOAT# ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450956, #NULL!offset=6442450948, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450961, ~#aT_atan~0!offset=6442450966, ~#atanhi_atan~0!base=6442450963, ~#atanhi_atan~0!offset=6442450952, ~#atanlo_atan~0!base=6442450957, ~#atanlo_atan~0!offset=6442450965, ~huge_atan~0=6.44245096E9, ~huge_floor~0=6.442450954E9, ~one_atan~0=6.442450945E9, ~pi_o_2~0=6.442450946E9, ~pi_o_4~0=6.44245095E9, ~pi~0=6.442450955E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~huge_floor~0 := 1.0E30; [L29-L34] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(16); [L29-L34] FCALL call write~init~real(0.46364760399, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.78539812565, { base: ~#atanhi_atan~0!base, offset: 4 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(0.98279368877, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 4); [L29-L34] FCALL call write~init~real(1.5707962513, { base: ~#atanhi_atan~0!base, offset: 12 + ~#atanhi_atan~0!offset }, 4); [L36-L41] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(16); [L36-L41] FCALL call write~init~real(5.012158244E-9, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.7748947079E-8, { base: ~#atanlo_atan~0!base, offset: 4 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(3.447321717E-8, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 4); [L36-L41] FCALL call write~init~real(7.5497894159E-8, { base: ~#atanlo_atan~0!base, offset: 12 + ~#atanlo_atan~0!offset }, 4); [L43-L47] FCALL call ~#aT_atan~0 := #Ultimate.alloc(44); [L43-L47] FCALL call write~init~real(0.33333334327, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.20000000298), { base: ~#aT_atan~0!base, offset: 4 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.14285714924, { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110449), { base: ~#aT_atan~0!base, offset: 12 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.090908870101, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.076918758452), { base: ~#aT_atan~0!base, offset: 20 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.066610731184, { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335702866), { base: ~#aT_atan~0!base, offset: 28 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.049768779427, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531571299), { base: ~#aT_atan~0!base, offset: 36 + ~#aT_atan~0!offset }, 4); [L43-L47] FCALL call write~init~real(0.016285819933, { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 4); [L49-L51] ~one_atan~0 := 1.0; [L49-L51] ~huge_atan~0 := 1.0E30; [L49-L51] ~pi_o_4~0 := 0.78539818525; [L49-L51] ~pi_o_2~0 := 1.5707963705; [L49-L51] ~pi~0 := 3.141592741; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450956, old(#NULL!offset)=6442450948, old(~#aT_atan~0!base)=6442450961, old(~#aT_atan~0!offset)=6442450966, old(~#atanhi_atan~0!base)=6442450963, old(~#atanhi_atan~0!offset)=6442450952, old(~#atanlo_atan~0!base)=6442450957, old(~#atanlo_atan~0!offset)=6442450965, old(~huge_atan~0)=6.44245096E9, old(~huge_floor~0)=6.442450954E9, old(~one_atan~0)=6.442450945E9, old(~pi_o_2~0)=6.442450946E9, old(~pi_o_4~0)=6.44245095E9, old(~pi~0)=6.442450955E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [?] CALL call #t~ret30 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L137] ~x~0 := ~someUnaryFLOAToperation(0.0); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L138] CALL call #t~ret27 := atan_float(~x~0); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000] [L53-L115] ~x := #in~x; [L54] havoc ~w~0; [L54] havoc ~s1~0; [L54] havoc ~s2~0; [L54] havoc ~z~0; [L55] havoc ~ix~1; [L55] havoc ~hx~0; [L55] havoc ~id~0; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L58] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L59] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] FCALL call #t~mem4 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] ~hx~0 := (if #t~mem4 % 4294967296 % 4294967296 <= 2147483647 then #t~mem4 % 4294967296 % 4294967296 else #t~mem4 % 4294967296 % 4294967296 - 4294967296); [L60] FCALL call write~real(#t~union5, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L60] havoc #t~union5; [L60] havoc #t~mem4; [L58] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L58] havoc ~#gf_u~1; VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L62] ~ix~1 := ~bitwiseAnd(~hx~0, 2147483647); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L63] COND TRUE ~ix~1 >= 1350565888 VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L64] COND TRUE ~ix~1 > 2139095040 [L65] #res := ~someBinaryArithmeticFLOAToperation(~x, ~x); VAL [#in~x=6.442450953E9, #NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~hx~0=-2147483648, ~ix~1=2139095041, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x=6.442450953E9] [L138] RET call #t~ret27 := atan_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret27=6.442450958E9, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~x~0=6.442450953E9] [L138] ~res~0 := #t~ret27; [L138] havoc #t~ret27; [L141] #t~short29 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND FALSE !(#t~short29) VAL [#NULL!base=0, #NULL!offset=0, #t~short29=false, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L141] COND TRUE !#t~short29 [L141] havoc #t~short29; [L141] havoc #t~ret28; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L142] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6442450962, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=6442450964, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=6442450947, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E30, ~huge_floor~0=1.0E30, ~one_atan~0=1.0, ~pi_o_2~0=3141592741/2000000000, ~pi_o_4~0=3141592741/4000000000, ~pi~0=3141592741/1000000000, ~res~0=6.442450958E9, ~x~0=6.442450953E9] [L12] static const float huge_floor = 1.0e30; [L29-L34] static const float atanhi_atan[] = { 4.6364760399e-01, 7.8539812565e-01, 9.8279368877e-01, 1.5707962513e+00, }; [L36-L41] static const float atanlo_atan[] = { 5.0121582440e-09, 3.7748947079e-08, 3.4473217170e-08, 7.5497894159e-08, }; [L43-L47] static const float aT_atan[] = { 3.3333334327e-01, -2.0000000298e-01, 1.4285714924e-01, -1.1111110449e-01, 9.0908870101e-02, -7.6918758452e-02, 6.6610731184e-02, -5.8335702866e-02, 4.9768779427e-02, -3.6531571299e-02, 1.6285819933e-02, }; [L49-L51] static const float one_atan = 1.0, huge_atan = 1.0e30, pi_o_4 = 7.8539818525e-01, pi_o_2 = 1.5707963705e+00, pi = 3.1415927410e+00; VAL [\old(aT_atan)=null, \old(aT_atan)=null, \old(atanhi_atan)=null, \old(atanhi_atan)=null, \old(atanlo_atan)=null, \old(atanlo_atan)=null, \old(huge_atan)=6442450960, \old(huge_floor)=6442450954, \old(one_atan)=6442450945, \old(pi)=6442450955, \old(pi_o_2)=6442450946, \old(pi_o_4)=6442450950, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L137] float x = -0.0f; VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L138] CALL, EXPR atan_float(x) VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L54] float w, s1, s2, z; [L55] __int32_t ix, hx, id; VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L58] ieee_float_shape_type gf_u; [L59] gf_u.value = (x) [L60] EXPR gf_u.word [L60] (hx) = gf_u.word [L62] ix = hx & 0x7fffffff VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L63] COND TRUE ix >= 0x50800000 VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, ix=2139095041, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L64] COND TRUE ((ix) > 0x7f800000L) [L65] return x + x; VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, ix=2139095041, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L138] RET, EXPR atan_float(x) VAL [aT_atan={6442450962:0}, atan_float(x)=6442450958, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L138] float res = atan_float(x); [L141] EXPR res == -0.0f && __signbit_float(res) == 1 VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, res=6442450958, res == -0.0f && __signbit_float(res) == 1=0, x=6442450953] [L141] COND TRUE !(res == -0.0f && __signbit_float(res) == 1) [L142] __VERIFIER_error() VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, res=6442450958, x=6442450953] ----- [2018-11-23 08:15:07,462 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 08:15:07 BoogieIcfgContainer [2018-11-23 08:15:07,462 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 08:15:07,462 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 08:15:07,462 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 08:15:07,462 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 08:15:07,463 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:07" (3/4) ... [2018-11-23 08:15:07,471 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 08:15:07,471 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 08:15:07,472 INFO L168 Benchmark]: Toolchain (without parser) took 1057.92 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 130.0 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -97.0 MB). Peak memory consumption was 33.0 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,473 INFO L168 Benchmark]: CDTParser took 0.10 ms. Allocated memory is still 1.0 GB. Free memory is still 985.6 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 08:15:07,474 INFO L168 Benchmark]: CACSL2BoogieTranslator took 257.61 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 130.0 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -171.8 MB). Peak memory consumption was 28.2 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,474 INFO L168 Benchmark]: Boogie Procedure Inliner took 19.70 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,475 INFO L168 Benchmark]: Boogie Preprocessor took 28.54 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,475 INFO L168 Benchmark]: RCFGBuilder took 317.65 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: 28.0 MB). Peak memory consumption was 28.0 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,476 INFO L168 Benchmark]: TraceAbstraction took 421.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: 38.7 MB). Peak memory consumption was 38.7 MB. Max. memory is 11.5 GB. [2018-11-23 08:15:07,476 INFO L168 Benchmark]: Witness Printer took 9.12 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 08:15:07,480 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10 ms. Allocated memory is still 1.0 GB. Free memory is still 985.6 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 257.61 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 130.0 MB). Free memory was 958.2 MB in the beginning and 1.1 GB in the end (delta: -171.8 MB). Peak memory consumption was 28.2 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 19.70 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 28.54 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 317.65 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: 28.0 MB). Peak memory consumption was 28.0 MB. Max. memory is 11.5 GB. * TraceAbstraction took 421.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: 38.7 MB). Peak memory consumption was 38.7 MB. Max. memory is 11.5 GB. * Witness Printer took 9.12 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.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450961 could not be translated for associated CType ARRAY#_11_~FLOAT# - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450965 could not be translated for associated CType ARRAY#_4_~FLOAT# - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450952 could not be translated for associated CType ARRAY#_4_~FLOAT# - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450963 could not be translated for associated CType ARRAY#_4_~FLOAT# - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450966 could not be translated for associated CType ARRAY#_11_~FLOAT# - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: IntegerLiteral 6442450957 could not be translated for associated CType ARRAY#_4_~FLOAT# * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 142]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 141, overapproximation of someUnaryDOUBLEoperation at line 44, overapproximation of bitwiseAnd at line 62, overapproximation of someUnaryFLOAToperation at line 137, overapproximation of someBinaryArithmeticFLOAToperation at line 65. Possible FailurePath: [L12] static const float huge_floor = 1.0e30; [L29-L34] static const float atanhi_atan[] = { 4.6364760399e-01, 7.8539812565e-01, 9.8279368877e-01, 1.5707962513e+00, }; [L36-L41] static const float atanlo_atan[] = { 5.0121582440e-09, 3.7748947079e-08, 3.4473217170e-08, 7.5497894159e-08, }; [L43-L47] static const float aT_atan[] = { 3.3333334327e-01, -2.0000000298e-01, 1.4285714924e-01, -1.1111110449e-01, 9.0908870101e-02, -7.6918758452e-02, 6.6610731184e-02, -5.8335702866e-02, 4.9768779427e-02, -3.6531571299e-02, 1.6285819933e-02, }; [L49-L51] static const float one_atan = 1.0, huge_atan = 1.0e30, pi_o_4 = 7.8539818525e-01, pi_o_2 = 1.5707963705e+00, pi = 3.1415927410e+00; VAL [\old(aT_atan)=null, \old(aT_atan)=null, \old(atanhi_atan)=null, \old(atanhi_atan)=null, \old(atanlo_atan)=null, \old(atanlo_atan)=null, \old(huge_atan)=6442450960, \old(huge_floor)=6442450954, \old(one_atan)=6442450945, \old(pi)=6442450955, \old(pi_o_2)=6442450946, \old(pi_o_4)=6442450950, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L137] float x = -0.0f; VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L138] CALL, EXPR atan_float(x) VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000] [L54] float w, s1, s2, z; [L55] __int32_t ix, hx, id; VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L58] ieee_float_shape_type gf_u; [L59] gf_u.value = (x) [L60] EXPR gf_u.word [L60] (hx) = gf_u.word [L62] ix = hx & 0x7fffffff VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L63] COND TRUE ix >= 0x50800000 VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, ix=2139095041, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L64] COND TRUE ((ix) > 0x7f800000L) [L65] return x + x; VAL [\old(x)=6442450953, aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, hx=-2147483648, ix=2139095041, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L138] RET, EXPR atan_float(x) VAL [aT_atan={6442450962:0}, atan_float(x)=6442450958, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, x=6442450953] [L138] float res = atan_float(x); [L141] EXPR res == -0.0f && __signbit_float(res) == 1 VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, res=6442450958, res == -0.0f && __signbit_float(res) == 1=0, x=6442450953] [L141] COND TRUE !(res == -0.0f && __signbit_float(res) == 1) [L142] __VERIFIER_error() VAL [aT_atan={6442450962:0}, atanhi_atan={6442450964:0}, atanlo_atan={6442450947:0}, huge_atan=1000000000000000000000000000000, huge_floor=1000000000000000000000000000000, one_atan=1, pi=3141592741/1000000000, pi_o_2=3141592741/2000000000, pi_o_4=3141592741/4000000000, res=6442450958, x=6442450953] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 54 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 65 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=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, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 37 NumberOfCodeBlocks, 37 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 17 ConstructedInterpolants, 0 QuantifiedInterpolants, 289 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 08:15:09,048 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 08:15:09,049 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 08:15:09,058 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 08:15:09,058 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 08:15:09,059 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 08:15:09,059 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 08:15:09,061 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 08:15:09,062 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 08:15:09,063 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 08:15:09,064 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 08:15:09,064 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 08:15:09,065 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 08:15:09,066 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 08:15:09,067 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 08:15:09,067 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 08:15:09,068 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 08:15:09,069 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 08:15:09,072 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 08:15:09,073 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 08:15:09,074 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 08:15:09,075 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 08:15:09,077 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 08:15:09,077 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 08:15:09,078 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 08:15:09,078 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 08:15:09,079 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 08:15:09,080 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 08:15:09,080 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 08:15:09,081 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 08:15:09,081 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 08:15:09,083 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 08:15:09,083 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 08:15:09,083 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 08:15:09,084 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 08:15:09,085 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 08:15:09,085 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 08:15:09,097 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 08:15:09,097 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 08:15:09,098 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 08:15:09,098 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 08:15:09,099 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 08:15:09,099 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 08:15:09,099 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 08:15:09,099 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 08:15:09,100 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 08:15:09,101 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 08:15:09,101 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 08:15:09,102 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 08:15:09,102 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 08:15:09,103 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 08:15:09,103 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 08:15:09,104 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 08:15:09,104 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 08:15:09,104 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 08:15:09,104 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 08:15:09,104 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_ae090809-aead-4a4b-84ef-d997616c97fd/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 -> fd8280e6c85ab06c5ea4e924d9eaa3661cb56ac8 [2018-11-23 08:15:09,135 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 08:15:09,144 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 08:15:09,146 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 08:15:09,147 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 08:15:09,148 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 08:15:09,148 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/../../sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:09,189 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/b4622b31f/31413b788d3a40b38051fc6c0629fce1/FLAG14e5171f2 [2018-11-23 08:15:09,530 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 08:15:09,531 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/sv-benchmarks/c/float-newlib/float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:09,536 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/b4622b31f/31413b788d3a40b38051fc6c0629fce1/FLAG14e5171f2 [2018-11-23 08:15:09,959 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/data/b4622b31f/31413b788d3a40b38051fc6c0629fce1 [2018-11-23 08:15:09,962 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 08:15:09,963 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 08:15:09,963 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 08:15:09,964 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 08:15:09,966 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 08:15:09,967 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:15:09" (1/1) ... [2018-11-23 08:15:09,969 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c42fe31 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:09, skipping insertion in model container [2018-11-23 08:15:09,970 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:15:09" (1/1) ... [2018-11-23 08:15:09,977 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 08:15:09,998 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 08:15:10,189 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:15:10,198 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 08:15:10,239 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:15:10,267 INFO L195 MainTranslator]: Completed translation [2018-11-23 08:15:10,267 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10 WrapperNode [2018-11-23 08:15:10,267 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 08:15:10,268 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 08:15:10,268 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 08:15:10,268 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 08:15:10,276 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,287 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,351 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 08:15:10,352 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 08:15:10,352 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 08:15:10,352 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 08:15:10,361 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,361 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,366 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,366 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,384 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,391 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,393 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... [2018-11-23 08:15:10,397 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 08:15:10,397 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 08:15:10,397 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 08:15:10,398 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 08:15:10,398 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 08:15:10,437 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE4 [2018-11-23 08:15:10,438 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 08:15:10,438 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 08:15:10,438 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4 [2018-11-23 08:15:10,438 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 08:15:10,438 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 08:15:10,438 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_float [2018-11-23 08:15:10,438 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_float [2018-11-23 08:15:10,439 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 08:15:10,439 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 08:15:10,439 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 08:15:10,439 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 08:15:10,439 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4 [2018-11-23 08:15:10,439 INFO L130 BoogieDeclarations]: Found specification of procedure __signbit_float [2018-11-23 08:15:10,440 INFO L138 BoogieDeclarations]: Found implementation of procedure __signbit_float [2018-11-23 08:15:10,440 INFO L130 BoogieDeclarations]: Found specification of procedure atan_float [2018-11-23 08:15:10,440 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_float [2018-11-23 08:15:10,440 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 08:15:10,440 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 08:15:10,698 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 08:15:18,116 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 08:15:18,116 INFO L280 CfgBuilder]: Removed 8 assue(true) statements. [2018-11-23 08:15:18,117 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:18 BoogieIcfgContainer [2018-11-23 08:15:18,117 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 08:15:18,118 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 08:15:18,118 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 08:15:18,120 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 08:15:18,120 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 08:15:09" (1/3) ... [2018-11-23 08:15:18,121 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28e1e962 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:15:18, skipping insertion in model container [2018-11-23 08:15:18,121 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:15:10" (2/3) ... [2018-11-23 08:15:18,121 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28e1e962 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:15:18, skipping insertion in model container [2018-11-23 08:15:18,122 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:18" (3/3) ... [2018-11-23 08:15:18,123 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_0620b_true-unreach-call.c [2018-11-23 08:15:18,131 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 08:15:18,137 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 08:15:18,149 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 08:15:18,174 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 08:15:18,174 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 08:15:18,174 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 08:15:18,175 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 08:15:18,175 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 08:15:18,175 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 08:15:18,175 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 08:15:18,175 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 08:15:18,175 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 08:15:18,189 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states. [2018-11-23 08:15:18,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 08:15:18,195 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:18,195 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:15:18,197 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:18,200 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:18,201 INFO L82 PathProgramCache]: Analyzing trace with hash -1775699146, now seen corresponding path program 1 times [2018-11-23 08:15:18,204 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:15:18,204 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 08:15:18,208 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:18,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:18,322 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:15:18,337 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 08:15:18,337 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:15:18,349 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:18,349 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 08:15:18,352 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 08:15:18,361 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 08:15:18,361 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 08:15:18,363 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 2 states. [2018-11-23 08:15:18,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:15:18,381 INFO L93 Difference]: Finished difference Result 100 states and 142 transitions. [2018-11-23 08:15:18,381 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 08:15:18,382 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 08:15:18,383 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:15:18,392 INFO L225 Difference]: With dead ends: 100 [2018-11-23 08:15:18,392 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 08:15:18,395 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 17 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 08:15:18,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 08:15:18,423 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 08:15:18,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 08:15:18,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 61 transitions. [2018-11-23 08:15:18,426 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 61 transitions. Word has length 18 [2018-11-23 08:15:18,426 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:15:18,426 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 61 transitions. [2018-11-23 08:15:18,426 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 08:15:18,427 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-23 08:15:18,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-23 08:15:18,427 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:18,428 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:15:18,428 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:18,428 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:18,428 INFO L82 PathProgramCache]: Analyzing trace with hash 1046652015, now seen corresponding path program 1 times [2018-11-23 08:15:18,429 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:15:18,429 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 08:15:18,436 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:18,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:18,548 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:15:18,702 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 08:15:18,702 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:15:18,713 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:18,713 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 08:15:18,715 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 08:15:18,715 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 08:15:18,715 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:15:18,716 INFO L87 Difference]: Start difference. First operand 50 states and 61 transitions. Second operand 7 states. [2018-11-23 08:15:29,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:15:29,690 INFO L93 Difference]: Finished difference Result 68 states and 79 transitions. [2018-11-23 08:15:29,744 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 08:15:29,745 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 19 [2018-11-23 08:15:29,745 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:15:29,747 INFO L225 Difference]: With dead ends: 68 [2018-11-23 08:15:29,747 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 08:15:29,748 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2018-11-23 08:15:29,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 08:15:29,755 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 48. [2018-11-23 08:15:29,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 08:15:29,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 56 transitions. [2018-11-23 08:15:29,756 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 56 transitions. Word has length 19 [2018-11-23 08:15:29,757 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:15:29,757 INFO L480 AbstractCegarLoop]: Abstraction has 48 states and 56 transitions. [2018-11-23 08:15:29,757 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 08:15:29,757 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 56 transitions. [2018-11-23 08:15:29,758 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-23 08:15:29,758 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:29,758 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 08:15:29,758 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:29,759 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:29,759 INFO L82 PathProgramCache]: Analyzing trace with hash 1727555058, now seen corresponding path program 1 times [2018-11-23 08:15:29,759 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:15:29,760 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/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 08:15:29,763 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:29,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:29,881 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:15:29,951 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 08:15:29,951 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:15:29,962 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:29,962 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 08:15:29,963 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 08:15:29,963 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 08:15:29,963 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:15:29,963 INFO L87 Difference]: Start difference. First operand 48 states and 56 transitions. Second operand 7 states. [2018-11-23 08:15:40,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:15:40,308 INFO L93 Difference]: Finished difference Result 56 states and 64 transitions. [2018-11-23 08:15:40,308 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 08:15:40,309 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 21 [2018-11-23 08:15:40,309 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:15:40,310 INFO L225 Difference]: With dead ends: 56 [2018-11-23 08:15:40,310 INFO L226 Difference]: Without dead ends: 53 [2018-11-23 08:15:40,310 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2018-11-23 08:15:40,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2018-11-23 08:15:40,315 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 52. [2018-11-23 08:15:40,315 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 08:15:40,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 60 transitions. [2018-11-23 08:15:40,316 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 60 transitions. Word has length 21 [2018-11-23 08:15:40,316 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:15:40,317 INFO L480 AbstractCegarLoop]: Abstraction has 52 states and 60 transitions. [2018-11-23 08:15:40,317 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 08:15:40,317 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 60 transitions. [2018-11-23 08:15:40,317 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 08:15:40,317 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:40,318 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 08:15:40,318 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:40,318 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:40,318 INFO L82 PathProgramCache]: Analyzing trace with hash -225183980, now seen corresponding path program 1 times [2018-11-23 08:15:40,318 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:15:40,318 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/mathsat Starting monitored process 5 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with mathsat -unsat_core_generation=3 [2018-11-23 08:15:40,321 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:41,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:41,357 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:15:41,436 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 08:15:41,436 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:15:41,462 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:41,462 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 08:15:41,462 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 08:15:41,463 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 08:15:41,463 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:15:41,463 INFO L87 Difference]: Start difference. First operand 52 states and 60 transitions. Second operand 7 states. [2018-11-23 08:15:49,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:15:49,782 INFO L93 Difference]: Finished difference Result 74 states and 84 transitions. [2018-11-23 08:15:49,829 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 08:15:49,829 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 23 [2018-11-23 08:15:49,829 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:15:49,830 INFO L225 Difference]: With dead ends: 74 [2018-11-23 08:15:49,830 INFO L226 Difference]: Without dead ends: 52 [2018-11-23 08:15:49,830 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2018-11-23 08:15:49,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2018-11-23 08:15:49,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 51. [2018-11-23 08:15:49,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 08:15:49,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 55 transitions. [2018-11-23 08:15:49,834 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 55 transitions. Word has length 23 [2018-11-23 08:15:49,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:15:49,834 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 55 transitions. [2018-11-23 08:15:49,835 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 08:15:49,835 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-23 08:15:49,835 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 08:15:49,835 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:15:49,835 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 08:15:49,835 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:15:49,836 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:15:49,836 INFO L82 PathProgramCache]: Analyzing trace with hash 1139373451, now seen corresponding path program 1 times [2018-11-23 08:15:49,836 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:15:49,836 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/mathsat Starting monitored process 6 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with mathsat -unsat_core_generation=3 [2018-11-23 08:15:49,839 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:15:50,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:15:50,871 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:15:51,617 WARN L180 SmtUtils]: Spent 390.00 ms on a formula simplification that was a NOOP. DAG size: 16 [2018-11-23 08:15:51,622 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 08:15:51,623 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:15:51,648 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:15:51,648 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 08:15:51,649 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 08:15:51,649 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 08:15:51,649 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2018-11-23 08:15:51,649 INFO L87 Difference]: Start difference. First operand 51 states and 55 transitions. Second operand 6 states. [2018-11-23 08:15:53,180 WARN L180 SmtUtils]: Spent 620.00 ms on a formula simplification that was a NOOP. DAG size: 18 [2018-11-23 08:16:03,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:16:03,536 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2018-11-23 08:16:03,560 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 08:16:03,560 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 24 [2018-11-23 08:16:03,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:16:03,561 INFO L225 Difference]: With dead ends: 70 [2018-11-23 08:16:03,561 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 08:16:03,562 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:16:03,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 08:16:03,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 08:16:03,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 08:16:03,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 53 transitions. [2018-11-23 08:16:03,567 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 53 transitions. Word has length 24 [2018-11-23 08:16:03,567 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:16:03,567 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 53 transitions. [2018-11-23 08:16:03,567 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 08:16:03,567 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 53 transitions. [2018-11-23 08:16:03,567 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2018-11-23 08:16:03,568 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:16:03,568 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:16:03,568 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:16:03,568 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:16:03,568 INFO L82 PathProgramCache]: Analyzing trace with hash -267271278, now seen corresponding path program 1 times [2018-11-23 08:16:03,569 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:16:03,569 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/mathsat Starting monitored process 7 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with mathsat -unsat_core_generation=3 [2018-11-23 08:16:03,571 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:16:03,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:16:03,676 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:16:03,849 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 08:16:03,849 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:16:03,857 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:16:03,857 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2018-11-23 08:16:03,858 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 08:16:03,858 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 08:16:03,858 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=111, Unknown=0, NotChecked=0, Total=132 [2018-11-23 08:16:03,858 INFO L87 Difference]: Start difference. First operand 50 states and 53 transitions. Second operand 12 states. [2018-11-23 08:16:10,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:16:10,413 INFO L93 Difference]: Finished difference Result 55 states and 58 transitions. [2018-11-23 08:16:10,413 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 08:16:10,413 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 29 [2018-11-23 08:16:10,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:16:10,414 INFO L225 Difference]: With dead ends: 55 [2018-11-23 08:16:10,414 INFO L226 Difference]: Without dead ends: 44 [2018-11-23 08:16:10,415 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=57, Invalid=285, Unknown=0, NotChecked=0, Total=342 [2018-11-23 08:16:10,415 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2018-11-23 08:16:10,421 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2018-11-23 08:16:10,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-23 08:16:10,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 46 transitions. [2018-11-23 08:16:10,422 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 46 transitions. Word has length 29 [2018-11-23 08:16:10,422 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:16:10,422 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 46 transitions. [2018-11-23 08:16:10,422 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 08:16:10,422 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 46 transitions. [2018-11-23 08:16:10,422 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2018-11-23 08:16:10,423 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:16:10,423 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:16:10,423 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:16:10,423 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:16:10,423 INFO L82 PathProgramCache]: Analyzing trace with hash 1116416613, now seen corresponding path program 1 times [2018-11-23 08:16:10,424 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:16:10,424 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/mathsat Starting monitored process 8 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with mathsat -unsat_core_generation=3 [2018-11-23 08:16:10,427 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:16:11,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:16:11,630 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:16:11,712 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 08:16:11,712 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:16:11,734 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:16:11,734 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 08:16:11,734 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 08:16:11,734 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 08:16:11,734 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:16:11,735 INFO L87 Difference]: Start difference. First operand 44 states and 46 transitions. Second operand 7 states. [2018-11-23 08:16:17,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:16:17,825 INFO L93 Difference]: Finished difference Result 44 states and 46 transitions. [2018-11-23 08:16:17,826 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 08:16:17,826 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 33 [2018-11-23 08:16:17,826 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:16:17,827 INFO L225 Difference]: With dead ends: 44 [2018-11-23 08:16:17,827 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 08:16:17,827 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2018-11-23 08:16:17,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 08:16:17,827 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 08:16:17,828 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 08:16:17,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 08:16:17,828 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 33 [2018-11-23 08:16:17,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:16:17,828 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 08:16:17,828 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 08:16:17,829 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 08:16:17,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 08:16:17,832 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 08:16:18,058 WARN L180 SmtUtils]: Spent 162.00 ms on a formula simplification. DAG size of input: 40 DAG size of output: 35 [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point fabs_floatFINAL(lines 14 27) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point fabs_floatEXIT(lines 14 27) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L451 ceAbstractionStarter]: At program point fabs_floatENTRY(lines 14 27) the Hoare annotation is: true [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point L21(lines 21 25) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point L21-1(lines 14 27) no Hoare annotation was computed. [2018-11-23 08:16:18,214 INFO L448 ceAbstractionStarter]: For program point L21-2(lines 21 25) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point L16-1(lines 16 20) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L451 ceAbstractionStarter]: At program point L16-2(lines 16 20) the Hoare annotation is: true [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L444 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: (and (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0) (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0)))) [2018-11-23 08:16:18,215 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 129 147) the Hoare annotation is: true [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 129 147) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point L142(line 142) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point L141(line 141) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 129 147) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L444 ceAbstractionStarter]: At program point L141-1(line 141) the Hoare annotation is: (or (not (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0)) (not (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0)))) (let ((.cse0 (fp.neg (_ +zero 8 24)))) (and |main_#t~short29| (= main_~res~0 .cse0) (= main_~x~0 .cse0)))) [2018-11-23 08:16:18,215 INFO L448 ceAbstractionStarter]: For program point L141-2(line 141) no Hoare annotation was computed. [2018-11-23 08:16:18,215 INFO L444 ceAbstractionStarter]: At program point L138(line 138) the Hoare annotation is: (or (not (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0)) (not (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0)))) (= main_~x~0 (fp.neg (_ +zero 8 24)))) [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point L138-1(line 138) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point L141-4(lines 141 144) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 142) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point __signbit_floatFINAL(lines 117 127) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point L120-1(lines 120 124) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L444 ceAbstractionStarter]: At program point L120-2(lines 120 124) the Hoare annotation is: (or (not (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0)) (= |__signbit_float_#in~x| __signbit_float_~x) (not (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0))))) [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point L120-3(lines 120 124) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L451 ceAbstractionStarter]: At program point __signbit_floatENTRY(lines 117 127) the Hoare annotation is: true [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point __signbit_floatEXIT(lines 117 127) no Hoare annotation was computed. [2018-11-23 08:16:18,216 INFO L448 ceAbstractionStarter]: For program point L64(lines 64 65) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L451 ceAbstractionStarter]: At program point atan_floatENTRY(lines 53 115) the Hoare annotation is: true [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point atan_floatFINAL(lines 53 115) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point L73(lines 73 74) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point L57-1(lines 57 61) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L444 ceAbstractionStarter]: At program point L57-2(lines 57 61) the Hoare annotation is: (or (not (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0)) (= |atan_float_#in~x| atan_float_~x) (not (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0))))) [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point L57-3(lines 57 61) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L444 ceAbstractionStarter]: At program point L78(line 78) the Hoare annotation is: (or (not (= ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1000000000000000000000000000000.0)) ~huge_atan~0)) (and (exists ((atan_float_~hx~0 (_ BitVec 32))) (and (not (bvslt (bvand (_ bv2147483647 32) atan_float_~hx~0) (_ bv1054867456 32))) (= (fp ((_ extract 31 31) atan_float_~hx~0) ((_ extract 30 23) atan_float_~hx~0) ((_ extract 22 0) atan_float_~hx~0)) |atan_float_#in~x|))) (exists ((atan_float_~hx~0 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) atan_float_~hx~0) ((_ extract 30 23) atan_float_~hx~0) ((_ extract 22 0) atan_float_~hx~0)) |atan_float_#in~x|) (= (bvand (_ bv2147483647 32) atan_float_~hx~0) atan_float_~ix~1))) (= (fp ((_ extract 31 31) atan_float_~hx~0) ((_ extract 30 23) atan_float_~hx~0) ((_ extract 22 0) atan_float_~hx~0)) |atan_float_#in~x|) (= |atan_float_#in~x| atan_float_~x)) (not (= ~one_atan~0 ((_ to_fp 8 24) roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0))))) [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point L78-1(line 78) no Hoare annotation was computed. [2018-11-23 08:16:18,217 INFO L448 ceAbstractionStarter]: For program point L66(lines 66 69) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L79(lines 79 95) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L71(lines 71 96) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point atan_floatEXIT(lines 53 115) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L63(lines 63 70) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L88(lines 88 94) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L88-2(lines 71 96) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L113(line 113) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L80(lines 80 86) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L113-2(line 113) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L109(lines 109 114) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L72(lines 72 75) no Hoare annotation was computed. [2018-11-23 08:16:18,218 INFO L448 ceAbstractionStarter]: For program point L72-2(lines 72 75) no Hoare annotation was computed. [2018-11-23 08:16:18,225 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,225 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,226 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,226 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,227 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,227 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,227 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,227 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,228 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,228 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,229 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,231 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 08:16:18 BoogieIcfgContainer [2018-11-23 08:16:18,231 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 08:16:18,231 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 08:16:18,231 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 08:16:18,231 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 08:16:18,231 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:15:18" (3/4) ... [2018-11-23 08:16:18,233 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 08:16:18,237 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2018-11-23 08:16:18,237 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure fabs_float [2018-11-23 08:16:18,238 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2018-11-23 08:16:18,238 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure __signbit_float [2018-11-23 08:16:18,238 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure atan_float [2018-11-23 08:16:18,242 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 35 nodes and edges [2018-11-23 08:16:18,242 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 15 nodes and edges [2018-11-23 08:16:18,243 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 6 nodes and edges [2018-11-23 08:16:18,243 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2018-11-23 08:16:18,262 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: (!(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0E30)) == huge_atan) || \old(x) == x) || !(one_atan == ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0))) [2018-11-23 08:16:18,262 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: (!(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0E30)) == huge_atan) || \old(x) == x) || !(one_atan == ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0))) [2018-11-23 08:16:18,289 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_ae090809-aead-4a4b-84ef-d997616c97fd/bin-2019/uautomizer/witness.graphml [2018-11-23 08:16:18,289 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 08:16:18,290 INFO L168 Benchmark]: Toolchain (without parser) took 68327.47 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 191.4 MB). Free memory was 949.7 MB in the beginning and 1.1 GB in the end (delta: -199.4 MB). There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 08:16:18,290 INFO L168 Benchmark]: CDTParser took 0.14 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 08:16:18,290 INFO L168 Benchmark]: CACSL2BoogieTranslator took 304.36 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 08:16:18,291 INFO L168 Benchmark]: Boogie Procedure Inliner took 83.31 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 130.5 MB). Free memory was 933.6 MB in the beginning and 1.1 GB in the end (delta: -191.4 MB). Peak memory consumption was 20.6 MB. Max. memory is 11.5 GB. [2018-11-23 08:16:18,291 INFO L168 Benchmark]: Boogie Preprocessor took 45.29 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.7 MB). Peak memory consumption was 6.7 MB. Max. memory is 11.5 GB. [2018-11-23 08:16:18,291 INFO L168 Benchmark]: RCFGBuilder took 7719.85 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: 32.8 MB). Peak memory consumption was 32.8 MB. Max. memory is 11.5 GB. [2018-11-23 08:16:18,292 INFO L168 Benchmark]: TraceAbstraction took 60113.10 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 60.8 MB). Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: -63.7 MB). Peak memory consumption was 293.3 MB. Max. memory is 11.5 GB. [2018-11-23 08:16:18,292 INFO L168 Benchmark]: Witness Printer took 58.11 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 08:16:18,294 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.14 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 304.36 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 83.31 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 130.5 MB). Free memory was 933.6 MB in the beginning and 1.1 GB in the end (delta: -191.4 MB). Peak memory consumption was 20.6 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 45.29 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.7 MB). Peak memory consumption was 6.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 7719.85 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: 32.8 MB). Peak memory consumption was 32.8 MB. Max. memory is 11.5 GB. * TraceAbstraction took 60113.10 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 60.8 MB). Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: -63.7 MB). Peak memory consumption was 293.3 MB. Max. memory is 11.5 GB. * Witness Printer took 58.11 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.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 142]: 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: 16]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 57]: Loop Invariant [2018-11-23 08:16:18,297 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,297 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,297 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,297 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: (!(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0E30)) == huge_atan) || \old(x) == x) || !(one_atan == ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0))) - InvariantResult [Line: 120]: Loop Invariant [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,298 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,299 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,299 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,299 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,299 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2018-11-23 08:16:18,299 WARN L416 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: (!(~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0E30)) == huge_atan) || \old(x) == x) || !(one_atan == ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, ~to_fp~LONGDOUBLE(~roundNearestTiesToEven, 1.0))) - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 54 locations, 1 error locations. SAFE Result, 60.0s OverallTime, 7 OverallIterations, 1 TraceHistogramMax, 54.3s AutomataDifference, 0.0s DeadEndRemovalTime, 0.3s HoareAnnotationTime, HoareTripleCheckerStatistics: 301 SDtfs, 235 SDslu, 1087 SDs, 0 SdLazy, 357 SolverSat, 28 SolverUnsat, 12 SolverUnknown, 0 SolverNotchecked, 50.4s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 183 GetRequests, 125 SyntacticMatches, 1 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 2.8s 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, 7 MinimizatonAttempts, 5 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 13 LocationsWithAnnotation, 25 PreInvPairs, 30 NumberOfFragments, 173 HoareAnnotationTreeSize, 25 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 13 FomulaSimplificationsInter, 245 FormulaSimplificationTreeSizeReductionInter, 0.3s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 3.3s SatisfiabilityAnalysisTime, 1.6s InterpolantComputationTime, 167 NumberOfCodeBlocks, 167 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 160 ConstructedInterpolants, 24 QuantifiedInterpolants, 25696 SizeOfPredicates, 25 NumberOfNonLiveVariables, 838 ConjunctsInSsa, 46 ConjunctsInUnsatCore, 7 InterpolantComputations, 7 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...