./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/float_req_bl_1271b_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_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan --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 Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d29f12e66e15a9c752fce15327a254c30da4b28a .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan --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 Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d29f12e66e15a9c752fce15327a254c30da4b28a ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: UnsupportedOperationException: translation of (bvneg (_ BitVec 32) (_ BitVec 32)) not yet implemented, please contact Matthias --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 08:37:46,836 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 08:37:46,837 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 08:37:46,845 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 08:37:46,845 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 08:37:46,846 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 08:37:46,847 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 08:37:46,848 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 08:37:46,849 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 08:37:46,850 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 08:37:46,850 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 08:37:46,850 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 08:37:46,851 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 08:37:46,851 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 08:37:46,852 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 08:37:46,853 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 08:37:46,853 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 08:37:46,854 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 08:37:46,855 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 08:37:46,856 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 08:37:46,857 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 08:37:46,858 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 08:37:46,859 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 08:37:46,859 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 08:37:46,860 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 08:37:46,860 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 08:37:46,861 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 08:37:46,861 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 08:37:46,862 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 08:37:46,862 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 08:37:46,862 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 08:37:46,863 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 08:37:46,863 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 08:37:46,863 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 08:37:46,864 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 08:37:46,864 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 08:37:46,864 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf [2018-11-23 08:37:46,873 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 08:37:46,873 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 08:37:46,874 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 08:37:46,874 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 08:37:46,874 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 08:37:46,875 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-11-23 08:37:46,875 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 08:37:46,876 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 08:37:46,876 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 08:37:46,876 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 08:37:46,876 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 08:37:46,876 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 08:37:46,877 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 08:37:46,877 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 08:37:46,878 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 08:37:46,878 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 08:37:46,879 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2018-11-23 08:37:46,879 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 08:37:46,879 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 08:37:46,879 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 08:37:46,879 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES 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_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan 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 -> Taipan 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 -> d29f12e66e15a9c752fce15327a254c30da4b28a [2018-11-23 08:37:46,900 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 08:37:46,910 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 08:37:46,912 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 08:37:46,913 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 08:37:46,913 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 08:37:46,914 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/../../sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:46,956 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/4ff5c9888/0744ee23b5ce48349e5dc092b75601db/FLAGf044fa4ee [2018-11-23 08:37:47,368 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 08:37:47,369 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:47,374 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/4ff5c9888/0744ee23b5ce48349e5dc092b75601db/FLAGf044fa4ee [2018-11-23 08:37:47,383 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/4ff5c9888/0744ee23b5ce48349e5dc092b75601db [2018-11-23 08:37:47,385 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 08:37:47,386 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 08:37:47,386 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 08:37:47,387 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 08:37:47,389 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 08:37:47,389 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,390 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2fb74b4d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47, skipping insertion in model container [2018-11-23 08:37:47,391 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,396 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 08:37:47,415 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 08:37:47,552 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:37:47,555 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 08:37:47,590 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:37:47,644 INFO L195 MainTranslator]: Completed translation [2018-11-23 08:37:47,644 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47 WrapperNode [2018-11-23 08:37:47,644 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 08:37:47,645 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 08:37:47,645 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 08:37:47,645 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 08:37:47,652 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:37:47" (1/1) ... [2018-11-23 08:37:47,663 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:37:47" (1/1) ... [2018-11-23 08:37:47,669 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 08:37:47,670 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 08:37:47,670 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 08:37:47,670 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 08:37:47,678 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,678 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,682 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,682 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,698 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,707 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,709 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... [2018-11-23 08:37:47,712 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 08:37:47,712 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 08:37:47,712 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 08:37:47,712 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 08:37:47,713 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:37:47,751 INFO L130 BoogieDeclarations]: Found specification of procedure isfinite_float [2018-11-23 08:37:47,751 INFO L138 BoogieDeclarations]: Found implementation of procedure isfinite_float [2018-11-23 08:37:47,751 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 08:37:47,751 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 08:37:47,752 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 08:37:47,752 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 08:37:47,752 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 08:37:47,752 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 08:37:47,753 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 08:37:47,753 INFO L130 BoogieDeclarations]: Found specification of procedure __ieee754_hypotf [2018-11-23 08:37:47,753 INFO L138 BoogieDeclarations]: Found implementation of procedure __ieee754_hypotf [2018-11-23 08:37:47,753 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 08:37:47,753 INFO L130 BoogieDeclarations]: Found specification of procedure __ieee754_sqrtf [2018-11-23 08:37:47,753 INFO L138 BoogieDeclarations]: Found implementation of procedure __ieee754_sqrtf [2018-11-23 08:37:48,191 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 08:37:48,191 INFO L280 CfgBuilder]: Removed 34 assue(true) statements. [2018-11-23 08:37:48,192 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:37:48 BoogieIcfgContainer [2018-11-23 08:37:48,192 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 08:37:48,193 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 08:37:48,193 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 08:37:48,196 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 08:37:48,196 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 08:37:47" (1/3) ... [2018-11-23 08:37:48,197 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16a6446a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:37:48, skipping insertion in model container [2018-11-23 08:37:48,197 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:47" (2/3) ... [2018-11-23 08:37:48,197 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16a6446a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:37:48, skipping insertion in model container [2018-11-23 08:37:48,197 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:37:48" (3/3) ... [2018-11-23 08:37:48,199 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:48,205 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 08:37:48,211 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 08:37:48,222 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 08:37:48,246 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 08:37:48,246 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 08:37:48,246 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 08:37:48,246 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 08:37:48,246 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 08:37:48,246 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 08:37:48,246 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 08:37:48,247 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 08:37:48,258 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states. [2018-11-23 08:37:48,265 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2018-11-23 08:37:48,265 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:37:48,265 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, 1] [2018-11-23 08:37:48,267 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:37:48,271 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:37:48,272 INFO L82 PathProgramCache]: Analyzing trace with hash 860825893, now seen corresponding path program 1 times [2018-11-23 08:37:48,274 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 08:37:48,313 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:37:48,313 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:37:48,313 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:37:48,313 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 08:37:48,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:37:48,386 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:37:48,388 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:37:48,388 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 08:37:48,388 INFO L256 anRefinementStrategy]: Using the first perfect interpolant sequence [2018-11-23 08:37:48,392 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 08:37:48,399 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 08:37:48,400 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 08:37:48,401 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 2 states. [2018-11-23 08:37:48,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:37:48,421 INFO L93 Difference]: Finished difference Result 210 states and 329 transitions. [2018-11-23 08:37:48,421 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 08:37:48,422 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 34 [2018-11-23 08:37:48,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:37:48,428 INFO L225 Difference]: With dead ends: 210 [2018-11-23 08:37:48,428 INFO L226 Difference]: Without dead ends: 104 [2018-11-23 08:37:48,431 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:37:48,446 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2018-11-23 08:37:48,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 104. [2018-11-23 08:37:48,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 104 states. [2018-11-23 08:37:48,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 126 transitions. [2018-11-23 08:37:48,464 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 126 transitions. Word has length 34 [2018-11-23 08:37:48,464 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:37:48,464 INFO L480 AbstractCegarLoop]: Abstraction has 104 states and 126 transitions. [2018-11-23 08:37:48,464 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 08:37:48,464 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 126 transitions. [2018-11-23 08:37:48,465 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 08:37:48,465 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:37:48,465 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, 1, 1, 1, 1, 1, 1] [2018-11-23 08:37:48,466 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:37:48,466 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:37:48,466 INFO L82 PathProgramCache]: Analyzing trace with hash 68622012, now seen corresponding path program 1 times [2018-11-23 08:37:48,466 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 08:37:48,467 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:37:48,467 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:37:48,467 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 08:37:48,468 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 08:37:48,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 08:37:48,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 08:37:48,576 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=10737418251, |#NULL.offset|=10737418241, |old(#NULL.base)|=10737418251, |old(#NULL.offset)|=10737418241, |old(~one_sqrt~0)|=10737418247.0, |old(~tiny_sqrt~0)|=10737418255.0, ~one_sqrt~0=10737418247.0, ~tiny_sqrt~0=10737418255.0] [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~one_sqrt~0 := 1.0;~tiny_sqrt~0 := 1.0E-30; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=10737418251, |old(#NULL.offset)|=10737418241, |old(~one_sqrt~0)|=10737418247.0, |old(~tiny_sqrt~0)|=10737418255.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume true; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=10737418251, |old(#NULL.offset)|=10737418241, |old(~one_sqrt~0)|=10737418247.0, |old(~tiny_sqrt~0)|=10737418255.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] RET #380#return; VAL [|#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] CALL call #t~ret39 := main(); VAL [|#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~x~0 := #t~nondet35;havoc #t~nondet35;~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [main_~x~0=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] CALL call #t~ret36 := isfinite_float(~x~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~x := #in~x;havoc ~ix~1; VAL [isfinite_float_~x=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] call ~#gf_u~3.base, ~#gf_u~3.offset := #Ultimate.alloc(4);call write~real(~x, ~#gf_u~3.base, ~#gf_u~3.offset, 4);call #t~mem33 := read~int(~#gf_u~3.base, ~#gf_u~3.offset, 4);~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union34, ~#gf_u~3.base, ~#gf_u~3.offset, 4);havoc #t~union34;havoc #t~mem33;call ULTIMATE.dealloc(~#gf_u~3.base, ~#gf_u~3.offset);havoc ~#gf_u~3.base, ~#gf_u~3.offset; VAL [isfinite_float_~ix~1=(- 2147483648), isfinite_float_~x=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] goto; VAL [isfinite_float_~ix~1=(- 2147483648), isfinite_float_~x=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647);#res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [isfinite_float_~ix~1=2139095039, isfinite_float_~x=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, |isfinite_float_#res|=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume true; VAL [isfinite_float_~ix~1=2139095039, isfinite_float_~x=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |isfinite_float_#in~x|=10737418244.0, |isfinite_float_#res|=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] RET #374#return; VAL [main_~x~0=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret36|=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [main_~x~0=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret36|=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume 0 != #t~ret36;havoc #t~ret36; VAL [main_~x~0=10737418244.0, |#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~x := #in~x;~y := #in~y;~a~0 := ~x;~b~0 := ~y;havoc ~t1~0;havoc ~t2~0;havoc ~y1~0;havoc ~y2~0;havoc ~w~0;havoc ~j~0;havoc ~k~0;havoc ~ha~0;havoc ~hb~0; VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.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~mem5 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4);~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union6, ~#gf_u~1.base, ~#gf_u~1.offset, 4);havoc #t~mem5;havoc #t~union6;call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset);havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~ha~0=(- 2147483648), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] goto; VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~ha~0=(- 2147483648), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] call ~#gf_u~2.base, ~#gf_u~2.offset := #Ultimate.alloc(4);call write~real(~y, ~#gf_u~2.base, ~#gf_u~2.offset, 4);call #t~mem7 := read~int(~#gf_u~2.base, ~#gf_u~2.offset, 4);~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union8, ~#gf_u~2.base, ~#gf_u~2.offset, 4);havoc #t~union8;havoc #t~mem7;call ULTIMATE.dealloc(~#gf_u~2.base, ~#gf_u~2.offset);havoc ~#gf_u~2.base, ~#gf_u~2.offset; VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~hb~0=3, __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] goto; VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~hb~0=3, __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [__ieee754_hypotf_~a~0=10737418244.0, __ieee754_hypotf_~b~0=10737418260.0, __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume ~hb~0 > ~ha~0;~a~0 := ~y;~b~0 := ~x;~j~0 := ~ha~0;~ha~0 := ~hb~0;~hb~0 := ~j~0; VAL [__ieee754_hypotf_~a~0=10737418260.0, __ieee754_hypotf_~b~0=10737418244.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] call ~#sf_u~1.base, ~#sf_u~1.offset := #Ultimate.alloc(4);call write~int(~ha~0, ~#sf_u~1.base, ~#sf_u~1.offset, 4);call #t~mem9 := read~real(~#sf_u~1.base, ~#sf_u~1.offset, 4);~a~0 := #t~mem9;call write~int(#t~union10, ~#sf_u~1.base, ~#sf_u~1.offset, 4);havoc #t~mem9;havoc #t~union10;call ULTIMATE.dealloc(~#sf_u~1.base, ~#sf_u~1.offset);havoc ~#sf_u~1.base, ~#sf_u~1.offset; VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418244.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] goto; VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418244.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] call ~#sf_u~2.base, ~#sf_u~2.offset := #Ultimate.alloc(4);call write~int(~hb~0, ~#sf_u~2.base, ~#sf_u~2.offset, 4);call #t~mem11 := read~real(~#sf_u~2.base, ~#sf_u~2.offset, 4);~b~0 := #t~mem11;call write~int(#t~union12, ~#sf_u~2.base, ~#sf_u~2.offset, 4);havoc #t~mem11;havoc #t~union12;call ULTIMATE.dealloc(~#sf_u~2.base, ~#sf_u~2.offset);havoc ~#sf_u~2.base, ~#sf_u~2.offset; VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418259.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] goto; VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418259.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume ~ha~0 - ~hb~0 > 251658240;#res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418259.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume true; VAL [__ieee754_hypotf_~a~0=10737418254.0, __ieee754_hypotf_~b~0=10737418259.0, __ieee754_hypotf_~ha~0=251658239, __ieee754_hypotf_~hb~0=(- 2), __ieee754_hypotf_~j~0=(- 2), __ieee754_hypotf_~x=10737418244.0, __ieee754_hypotf_~y=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |__ieee754_hypotf_#in~x|=10737418244.0, |__ieee754_hypotf_#in~y|=10737418260.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] RET #376#return; VAL [main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret37|=10737418261.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~res~0 := #t~ret37;havoc #t~ret37; VAL [main_~res~0=10737418261.0, main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] CALL call #t~ret38 := isnan_float(~res~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=10737418261.0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] ~x := #in~x;#res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [isnan_float_~x=10737418261.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=10737418261.0, |isnan_float_#res|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume true; VAL [isnan_float_~x=10737418261.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=10737418261.0, |isnan_float_#res|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] RET #378#return; VAL [main_~res~0=10737418261.0, main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret38|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [main_~res~0=10737418261.0, main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret38|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume 0 == #t~ret38;havoc #t~ret38; VAL [main_~res~0=10737418261.0, main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] assume !false; VAL [main_~res~0=10737418261.0, main_~x~0=10737418244.0, main_~y~0=10737418260.0, |#NULL.base|=0, |#NULL.offset|=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=(/ 1.0 1000000000000000000000000000000.0)] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=10737418251, #NULL.offset=10737418241, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] call ~#gf_u~3.base, ~#gf_u~3.offset := #Ultimate.alloc(4); [L218] call write~real(~x, ~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] call #t~mem33 := read~int(~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] call write~real(#t~union34, ~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] call ULTIMATE.dealloc(~#gf_u~3.base, ~#gf_u~3.offset); [L217] havoc ~#gf_u~3.base, ~#gf_u~3.offset; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L214-L223] ensures true; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] assume 0 != #t~ret36; [L235] havoc #t~ret36; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L87] call write~real(~x, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] call #t~mem5 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] call write~real(#t~union6, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L86] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] call ~#gf_u~2.base, ~#gf_u~2.offset := #Ultimate.alloc(4); [L93] call write~real(~y, ~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] call #t~mem7 := read~int(~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] call write~real(#t~union8, ~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] call ULTIMATE.dealloc(~#gf_u~2.base, ~#gf_u~2.offset); [L92] havoc ~#gf_u~2.base, ~#gf_u~2.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97-L106] assume ~hb~0 > ~ha~0; [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] call ~#sf_u~1.base, ~#sf_u~1.offset := #Ultimate.alloc(4); [L109] call write~int(~ha~0, ~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] call #t~mem9 := read~real(~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] ~a~0 := #t~mem9; [L110] call write~int(#t~union10, ~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] call ULTIMATE.dealloc(~#sf_u~1.base, ~#sf_u~1.offset); [L108] havoc ~#sf_u~1.base, ~#sf_u~1.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] call ~#sf_u~2.base, ~#sf_u~2.offset := #Ultimate.alloc(4); [L114] call write~int(~hb~0, ~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] call #t~mem11 := read~real(~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] ~b~0 := #t~mem11; [L115] call write~int(#t~union12, ~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] call ULTIMATE.dealloc(~#sf_u~2.base, ~#sf_u~2.offset); [L113] havoc ~#sf_u~2.base, ~#sf_u~2.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117-L119] assume ~ha~0 - ~hb~0 > 251658240; [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L81-L208] ensures true; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L211] ensures true; VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238-L241] assume 0 == #t~ret38; [L238] havoc #t~ret38; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=10737418251, #NULL.offset=10737418241, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=10737418251, old(#NULL.offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] call ~#gf_u~3.base, ~#gf_u~3.offset := #Ultimate.alloc(4); [L218] call write~real(~x, ~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] call #t~mem33 := read~int(~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] call write~real(#t~union34, ~#gf_u~3.base, ~#gf_u~3.offset, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] call ULTIMATE.dealloc(~#gf_u~3.base, ~#gf_u~3.offset); [L217] havoc ~#gf_u~3.base, ~#gf_u~3.offset; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L214-L223] ensures true; VAL [#in~x=1.0737418244E10, #NULL.base=0, #NULL.offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] assume 0 != #t~ret36; [L235] havoc #t~ret36; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L87] call write~real(~x, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] call #t~mem5 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] call write~real(#t~union6, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L86] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] call ~#gf_u~2.base, ~#gf_u~2.offset := #Ultimate.alloc(4); [L93] call write~real(~y, ~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] call #t~mem7 := read~int(~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] call write~real(#t~union8, ~#gf_u~2.base, ~#gf_u~2.offset, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] call ULTIMATE.dealloc(~#gf_u~2.base, ~#gf_u~2.offset); [L92] havoc ~#gf_u~2.base, ~#gf_u~2.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97-L106] assume ~hb~0 > ~ha~0; [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] call ~#sf_u~1.base, ~#sf_u~1.offset := #Ultimate.alloc(4); [L109] call write~int(~ha~0, ~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] call #t~mem9 := read~real(~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] ~a~0 := #t~mem9; [L110] call write~int(#t~union10, ~#sf_u~1.base, ~#sf_u~1.offset, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] call ULTIMATE.dealloc(~#sf_u~1.base, ~#sf_u~1.offset); [L108] havoc ~#sf_u~1.base, ~#sf_u~1.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] call ~#sf_u~2.base, ~#sf_u~2.offset := #Ultimate.alloc(4); [L114] call write~int(~hb~0, ~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] call #t~mem11 := read~real(~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] ~b~0 := #t~mem11; [L115] call write~int(#t~union12, ~#sf_u~2.base, ~#sf_u~2.offset, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] call ULTIMATE.dealloc(~#sf_u~2.base, ~#sf_u~2.offset); [L113] havoc ~#sf_u~2.base, ~#sf_u~2.offset; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117-L119] assume ~ha~0 - ~hb~0 > 251658240; [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L81-L208] ensures true; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL.base=0, #NULL.offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L211] ensures true; VAL [#in~x=1.0737418261E10, #NULL.base=0, #NULL.offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238-L241] assume 0 == #t~ret38; [L238] havoc #t~ret38; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=10737418251, #NULL!offset=10737418241, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] FCALL call ~#gf_u~3 := #Ultimate.alloc(4); [L218] FCALL call write~real(~x, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] FCALL call #t~mem33 := read~int({ base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] FCALL call write~real(#t~union34, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] FCALL call ULTIMATE.dealloc(~#gf_u~3); [L217] havoc ~#gf_u~3; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] COND TRUE 0 != #t~ret36 [L235] havoc #t~ret36; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L87] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] FCALL call #t~mem5 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] FCALL call write~real(#t~union6, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L86] havoc ~#gf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] FCALL call ~#gf_u~2 := #Ultimate.alloc(4); [L93] FCALL call write~real(~y, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] FCALL call #t~mem7 := read~int({ base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] FCALL call write~real(#t~union8, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] FCALL call ULTIMATE.dealloc(~#gf_u~2); [L92] havoc ~#gf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97] COND TRUE ~hb~0 > ~ha~0 [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] FCALL call ~#sf_u~1 := #Ultimate.alloc(4); [L109] FCALL call write~int(~ha~0, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] FCALL call #t~mem9 := read~real({ base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] ~a~0 := #t~mem9; [L110] FCALL call write~int(#t~union10, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] FCALL call ULTIMATE.dealloc(~#sf_u~1); [L108] havoc ~#sf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] FCALL call ~#sf_u~2 := #Ultimate.alloc(4); [L114] FCALL call write~int(~hb~0, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] FCALL call #t~mem11 := read~real({ base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] ~b~0 := #t~mem11; [L115] FCALL call write~int(#t~union12, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] FCALL call ULTIMATE.dealloc(~#sf_u~2); [L113] havoc ~#sf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117] COND TRUE ~ha~0 - ~hb~0 > 251658240 [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] COND TRUE 0 == #t~ret38 [L238] havoc #t~ret38; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=10737418251, #NULL!offset=10737418241, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] FCALL call ~#gf_u~3 := #Ultimate.alloc(4); [L218] FCALL call write~real(~x, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] FCALL call #t~mem33 := read~int({ base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] FCALL call write~real(#t~union34, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] FCALL call ULTIMATE.dealloc(~#gf_u~3); [L217] havoc ~#gf_u~3; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] COND TRUE 0 != #t~ret36 [L235] havoc #t~ret36; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L87] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] FCALL call #t~mem5 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] FCALL call write~real(#t~union6, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L86] havoc ~#gf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] FCALL call ~#gf_u~2 := #Ultimate.alloc(4); [L93] FCALL call write~real(~y, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] FCALL call #t~mem7 := read~int({ base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] FCALL call write~real(#t~union8, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] FCALL call ULTIMATE.dealloc(~#gf_u~2); [L92] havoc ~#gf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97] COND TRUE ~hb~0 > ~ha~0 [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] FCALL call ~#sf_u~1 := #Ultimate.alloc(4); [L109] FCALL call write~int(~ha~0, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] FCALL call #t~mem9 := read~real({ base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] ~a~0 := #t~mem9; [L110] FCALL call write~int(#t~union10, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] FCALL call ULTIMATE.dealloc(~#sf_u~1); [L108] havoc ~#sf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] FCALL call ~#sf_u~2 := #Ultimate.alloc(4); [L114] FCALL call write~int(~hb~0, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] FCALL call #t~mem11 := read~real({ base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] ~b~0 := #t~mem11; [L115] FCALL call write~int(#t~union12, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] FCALL call ULTIMATE.dealloc(~#sf_u~2); [L113] havoc ~#sf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117] COND TRUE ~ha~0 - ~hb~0 > 251658240 [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] COND TRUE 0 == #t~ret38 [L238] havoc #t~ret38; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=10737418251, #NULL!offset=10737418241, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] FCALL call ~#gf_u~3 := #Ultimate.alloc(4); [L218] FCALL call write~real(~x, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] FCALL call #t~mem33 := read~int({ base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] FCALL call write~real(#t~union34, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] FCALL call ULTIMATE.dealloc(~#gf_u~3); [L217] havoc ~#gf_u~3; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] COND TRUE 0 != #t~ret36 [L235] havoc #t~ret36; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L87] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] FCALL call #t~mem5 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] FCALL call write~real(#t~union6, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L86] havoc ~#gf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] FCALL call ~#gf_u~2 := #Ultimate.alloc(4); [L93] FCALL call write~real(~y, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] FCALL call #t~mem7 := read~int({ base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] FCALL call write~real(#t~union8, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] FCALL call ULTIMATE.dealloc(~#gf_u~2); [L92] havoc ~#gf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97] COND TRUE ~hb~0 > ~ha~0 [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] FCALL call ~#sf_u~1 := #Ultimate.alloc(4); [L109] FCALL call write~int(~ha~0, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] FCALL call #t~mem9 := read~real({ base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] ~a~0 := #t~mem9; [L110] FCALL call write~int(#t~union10, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] FCALL call ULTIMATE.dealloc(~#sf_u~1); [L108] havoc ~#sf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] FCALL call ~#sf_u~2 := #Ultimate.alloc(4); [L114] FCALL call write~int(~hb~0, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] FCALL call #t~mem11 := read~real({ base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] ~b~0 := #t~mem11; [L115] FCALL call write~int(#t~union12, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] FCALL call ULTIMATE.dealloc(~#sf_u~2); [L113] havoc ~#sf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117] COND TRUE ~ha~0 - ~hb~0 > 251658240 [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] COND TRUE 0 == #t~ret38 [L238] havoc #t~ret38; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=10737418251, #NULL!offset=10737418241, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0737418247E10, ~tiny_sqrt~0=1.0737418255E10] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12] ~one_sqrt~0 := 1.0; [L12] ~tiny_sqrt~0 := 1.0E-30; VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=10737418251, old(#NULL!offset)=10737418241, old(~one_sqrt~0)=1.0737418247E10, old(~tiny_sqrt~0)=1.0737418255E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [?] CALL call #t~ret39 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L232] ~x~0 := #t~nondet35; [L232] havoc #t~nondet35; [L233] ~y~0 := ~someBinaryArithmeticFLOAToperation(0.0, 0.0); VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] CALL call #t~ret36 := isfinite_float(~x~0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L214-L223] ~x := #in~x; [L215] havoc ~ix~1; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L217] FCALL call ~#gf_u~3 := #Ultimate.alloc(4); [L218] FCALL call write~real(~x, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] FCALL call #t~mem33 := read~int({ base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] ~ix~1 := (if #t~mem33 % 4294967296 % 4294967296 <= 2147483647 then #t~mem33 % 4294967296 % 4294967296 else #t~mem33 % 4294967296 % 4294967296 - 4294967296); [L219] FCALL call write~real(#t~union34, { base: ~#gf_u~3!base, offset: ~#gf_u~3!offset }, 4); [L219] havoc #t~union34; [L219] havoc #t~mem33; [L217] FCALL call ULTIMATE.dealloc(~#gf_u~3); [L217] havoc ~#gf_u~3; VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, ~ix~1=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L221] ~ix~1 := ~bitwiseAnd(~ix~1, 2147483647); [L222] #res := (if ~ix~1 < 2139095040 then 1 else 0); VAL [#in~x=1.0737418244E10, #NULL!base=0, #NULL!offset=0, #res=1, ~ix~1=2139095039, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10] [L235] RET call #t~ret36 := isfinite_float(~x~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235] assume -2147483648 <= #t~ret36 && #t~ret36 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret36=1, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L235-L242] COND TRUE 0 != #t~ret36 [L235] havoc #t~ret36; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10] [L236] CALL call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L81-L208] ~x := #in~x; [L81-L208] ~y := #in~y; [L82] ~a~0 := ~x; [L82] ~b~0 := ~y; [L82] havoc ~t1~0; [L82] havoc ~t2~0; [L82] havoc ~y1~0; [L82] havoc ~y2~0; [L82] havoc ~w~0; [L83] havoc ~j~0; [L83] havoc ~k~0; [L83] havoc ~ha~0; [L83] havoc ~hb~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L86] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L87] FCALL call write~real(~x, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] FCALL call #t~mem5 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] ~ha~0 := (if #t~mem5 % 4294967296 % 4294967296 <= 2147483647 then #t~mem5 % 4294967296 % 4294967296 else #t~mem5 % 4294967296 % 4294967296 - 4294967296); [L88] FCALL call write~real(#t~union6, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L88] havoc #t~mem5; [L88] havoc #t~union6; [L86] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L86] havoc ~#gf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~ha~0=-2147483648, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L90] ~ha~0 := ~bitwiseAnd(~ha~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L92] FCALL call ~#gf_u~2 := #Ultimate.alloc(4); [L93] FCALL call write~real(~y, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] FCALL call #t~mem7 := read~int({ base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] ~hb~0 := (if #t~mem7 % 4294967296 % 4294967296 <= 2147483647 then #t~mem7 % 4294967296 % 4294967296 else #t~mem7 % 4294967296 % 4294967296 - 4294967296); [L94] FCALL call write~real(#t~union8, { base: ~#gf_u~2!base, offset: ~#gf_u~2!offset }, 4); [L94] havoc #t~union8; [L94] havoc #t~mem7; [L92] FCALL call ULTIMATE.dealloc(~#gf_u~2); [L92] havoc ~#gf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~hb~0=3, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L96] ~hb~0 := ~bitwiseAnd(~hb~0, 2147483647); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418244E10, ~b~0=1.073741826E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L97] COND TRUE ~hb~0 > ~ha~0 [L98] ~a~0 := ~y; [L99] ~b~0 := ~x; [L100] ~j~0 := ~ha~0; [L101] ~ha~0 := ~hb~0; [L102] ~hb~0 := ~j~0; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.073741826E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L108] FCALL call ~#sf_u~1 := #Ultimate.alloc(4); [L109] FCALL call write~int(~ha~0, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] FCALL call #t~mem9 := read~real({ base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] ~a~0 := #t~mem9; [L110] FCALL call write~int(#t~union10, { base: ~#sf_u~1!base, offset: ~#sf_u~1!offset }, 4); [L110] havoc #t~mem9; [L110] havoc #t~union10; [L108] FCALL call ULTIMATE.dealloc(~#sf_u~1); [L108] havoc ~#sf_u~1; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418244E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L113] FCALL call ~#sf_u~2 := #Ultimate.alloc(4); [L114] FCALL call write~int(~hb~0, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] FCALL call #t~mem11 := read~real({ base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] ~b~0 := #t~mem11; [L115] FCALL call write~int(#t~union12, { base: ~#sf_u~2!base, offset: ~#sf_u~2!offset }, 4); [L115] havoc #t~mem11; [L115] havoc #t~union12; [L113] FCALL call ULTIMATE.dealloc(~#sf_u~2); [L113] havoc ~#sf_u~2; VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L117] COND TRUE ~ha~0 - ~hb~0 > 251658240 [L118] #res := ~someBinaryArithmeticFLOAToperation(~a~0, ~b~0); VAL [#in~x=1.0737418244E10, #in~y=1.073741826E10, #NULL!base=0, #NULL!offset=0, ~a~0=1.0737418254E10, ~b~0=1.0737418259E10, ~ha~0=251658239, ~hb~0=-2, ~j~0=-2, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418244E10, ~y=1.073741826E10] [L236] RET call #t~ret37 := __ieee754_hypotf(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret37=1.0737418261E10, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L236] ~res~0 := #t~ret37; [L236] havoc #t~ret37; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] CALL call #t~ret38 := isnan_float(~res~0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000] [L211] ~x := #in~x; [L211] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=1.0737418261E10, #NULL!base=0, #NULL!offset=0, #res=0, ~one_sqrt~0=1.0, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x=1.0737418261E10] [L238] RET call #t~ret38 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] assume -2147483648 <= #t~ret38 && #t~ret38 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret38=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L238] COND TRUE 0 == #t~ret38 [L238] havoc #t~ret38; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L239] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~one_sqrt~0=1.0, ~res~0=1.0737418261E10, ~tiny_sqrt~0=1/1000000000000000000000000000000, ~x~0=1.0737418244E10, ~y~0=1.073741826E10] [L12] static const float one_sqrt = 1.0, tiny_sqrt = 1.0e-30; VAL [\old(one_sqrt)=10737418247, \old(tiny_sqrt)=10737418255, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L232] float x = __VERIFIER_nondet_float(); [L233] float y = 0.0f / 0.0f; VAL [one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] CALL isfinite_float(x) VAL [\old(x)=10737418244, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L215] __int32_t ix; VAL [\old(x)=10737418244, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L217] ieee_float_shape_type gf_u; [L218] gf_u.value = (x) [L219] EXPR gf_u.word [L219] (ix) = gf_u.word [L221] ix &= 0x7fffffff [L222] return (((ix) < 0x7f800000L)); VAL [\old(x)=10737418244, \result=1, ix=2139095039, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] RET isfinite_float(x) VAL [isfinite_float(x)=1, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] COND TRUE isfinite_float(x) [L236] CALL, EXPR __ieee754_hypotf(x, y) VAL [\old(x)=10737418244, \old(y)=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L82] float a = x, b = y, t1, t2, y1, y2, w; [L83] __int32_t j, k, ha, hb; VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L86] ieee_float_shape_type gf_u; [L87] gf_u.value = (x) [L88] EXPR gf_u.word [L88] (ha) = gf_u.word [L90] ha &= 0x7fffffffL VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L92] ieee_float_shape_type gf_u; [L93] gf_u.value = (y) [L94] EXPR gf_u.word [L94] (hb) = gf_u.word [L96] hb &= 0x7fffffffL VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L97] COND TRUE hb > ha [L98] a = y [L99] b = x [L100] j = ha [L101] ha = hb [L102] hb = j VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418260, b=10737418244, ha=251658239, hb=-2, j=-2, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L108] ieee_float_shape_type sf_u; [L109] sf_u.word = (ha) [L110] EXPR sf_u.value [L110] (a) = sf_u.value [L113] ieee_float_shape_type sf_u; [L114] sf_u.word = (hb) [L115] EXPR sf_u.value [L115] (b) = sf_u.value [L117] COND TRUE (ha - hb) > 0xf000000L [L118] return a + b; VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418254, b=10737418259, ha=251658239, hb=-2, j=-2, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L236] RET, EXPR __ieee754_hypotf(x, y) VAL [__ieee754_hypotf(x, y)=10737418261, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L236] float res = __ieee754_hypotf(x, y); [L238] CALL, EXPR isnan_float(res) VAL [\old(x)=10737418261, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L211] return x != x; VAL [\old(x)=10737418261, \result=0, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418261] [L238] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_sqrt=1, res=10737418261, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L238] COND TRUE !isnan_float(res) [L239] __VERIFIER_error() VAL [one_sqrt=1, res=10737418261, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] ----- [2018-11-23 08:37:48,640 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 08:37:48 BoogieIcfgContainer [2018-11-23 08:37:48,640 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 08:37:48,641 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 08:37:48,641 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 08:37:48,641 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 08:37:48,641 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:37:48" (3/4) ... [2018-11-23 08:37:48,644 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 08:37:48,645 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 08:37:48,645 INFO L168 Benchmark]: Toolchain (without parser) took 1259.94 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 158.9 MB). Free memory was 960.2 MB in the beginning and 1.1 GB in the end (delta: -97.6 MB). Peak memory consumption was 61.3 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,647 INFO L168 Benchmark]: CDTParser took 0.16 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 08:37:48,647 INFO L168 Benchmark]: CACSL2BoogieTranslator took 258.04 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 158.9 MB). Free memory was 960.2 MB in the beginning and 1.2 GB in the end (delta: -196.6 MB). Peak memory consumption was 32.5 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,648 INFO L168 Benchmark]: Boogie Procedure Inliner took 24.82 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,648 INFO L168 Benchmark]: Boogie Preprocessor took 41.94 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,649 INFO L168 Benchmark]: RCFGBuilder took 480.16 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 45.1 MB). Peak memory consumption was 45.1 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,649 INFO L168 Benchmark]: TraceAbstraction took 447.47 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: 47.3 MB). Peak memory consumption was 47.3 MB. Max. memory is 11.5 GB. [2018-11-23 08:37:48,650 INFO L168 Benchmark]: Witness Printer took 4.10 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:37:48,652 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 258.04 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 158.9 MB). Free memory was 960.2 MB in the beginning and 1.2 GB in the end (delta: -196.6 MB). Peak memory consumption was 32.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 24.82 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 41.94 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. * RCFGBuilder took 480.16 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 45.1 MB). Peak memory consumption was 45.1 MB. Max. memory is 11.5 GB. * TraceAbstraction took 447.47 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: 47.3 MB). Peak memory consumption was 47.3 MB. Max. memory is 11.5 GB. * Witness Printer took 4.10 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 239]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 211, overapproximation of someBinaryArithmeticFLOAToperation at line 118, overapproximation of bitwiseAnd at line 96. Possible FailurePath: [L12] static const float one_sqrt = 1.0, tiny_sqrt = 1.0e-30; VAL [\old(one_sqrt)=10737418247, \old(tiny_sqrt)=10737418255, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L232] float x = __VERIFIER_nondet_float(); [L233] float y = 0.0f / 0.0f; VAL [one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] CALL isfinite_float(x) VAL [\old(x)=10737418244, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L215] __int32_t ix; VAL [\old(x)=10737418244, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L217] ieee_float_shape_type gf_u; [L218] gf_u.value = (x) [L219] EXPR gf_u.word [L219] (ix) = gf_u.word [L221] ix &= 0x7fffffff [L222] return (((ix) < 0x7f800000L)); VAL [\old(x)=10737418244, \result=1, ix=2139095039, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] RET isfinite_float(x) VAL [isfinite_float(x)=1, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244] [L235] COND TRUE isfinite_float(x) [L236] CALL, EXPR __ieee754_hypotf(x, y) VAL [\old(x)=10737418244, \old(y)=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L82] float a = x, b = y, t1, t2, y1, y2, w; [L83] __int32_t j, k, ha, hb; VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L86] ieee_float_shape_type gf_u; [L87] gf_u.value = (x) [L88] EXPR gf_u.word [L88] (ha) = gf_u.word [L90] ha &= 0x7fffffffL VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L92] ieee_float_shape_type gf_u; [L93] gf_u.value = (y) [L94] EXPR gf_u.word [L94] (hb) = gf_u.word [L96] hb &= 0x7fffffffL VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418244, b=10737418260, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L97] COND TRUE hb > ha [L98] a = y [L99] b = x [L100] j = ha [L101] ha = hb [L102] hb = j VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418260, b=10737418244, ha=251658239, hb=-2, j=-2, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L108] ieee_float_shape_type sf_u; [L109] sf_u.word = (ha) [L110] EXPR sf_u.value [L110] (a) = sf_u.value [L113] ieee_float_shape_type sf_u; [L114] sf_u.word = (hb) [L115] EXPR sf_u.value [L115] (b) = sf_u.value [L117] COND TRUE (ha - hb) > 0xf000000L [L118] return a + b; VAL [\old(x)=10737418244, \old(y)=10737418260, a=10737418254, b=10737418259, ha=251658239, hb=-2, j=-2, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L236] RET, EXPR __ieee754_hypotf(x, y) VAL [__ieee754_hypotf(x, y)=10737418261, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L236] float res = __ieee754_hypotf(x, y); [L238] CALL, EXPR isnan_float(res) VAL [\old(x)=10737418261, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000] [L211] return x != x; VAL [\old(x)=10737418261, \result=0, one_sqrt=1, tiny_sqrt=1/1000000000000000000000000000000, x=10737418261] [L238] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_sqrt=1, res=10737418261, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] [L238] COND TRUE !isnan_float(res) [L239] __VERIFIER_error() VAL [one_sqrt=1, res=10737418261, tiny_sqrt=1/1000000000000000000000000000000, x=10737418244, y=10737418260] - StatisticsResult: Ultimate Automizer benchmark data CFG has 7 procedures, 109 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 132 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=109occurred 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, 73 NumberOfCodeBlocks, 73 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 33 ConstructedInterpolants, 0 QuantifiedInterpolants, 1089 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:37:50,102 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 08:37:50,103 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 08:37:50,111 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 08:37:50,111 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 08:37:50,111 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 08:37:50,112 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 08:37:50,114 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 08:37:50,115 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 08:37:50,115 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 08:37:50,116 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 08:37:50,116 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 08:37:50,117 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 08:37:50,118 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 08:37:50,119 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 08:37:50,119 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 08:37:50,121 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 08:37:50,122 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 08:37:50,123 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 08:37:50,125 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 08:37:50,126 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 08:37:50,127 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 08:37:50,129 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 08:37:50,129 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 08:37:50,129 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 08:37:50,130 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 08:37:50,131 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 08:37:50,131 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 08:37:50,132 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 08:37:50,133 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 08:37:50,133 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 08:37:50,134 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 08:37:50,134 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 08:37:50,134 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 08:37:50,135 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 08:37:50,136 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 08:37:50,136 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf [2018-11-23 08:37:50,147 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 08:37:50,148 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 08:37:50,149 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 08:37:50,149 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 08:37:50,149 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 08:37:50,149 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 08:37:50,149 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 08:37:50,149 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 08:37:50,149 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 08:37:50,150 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 08:37:50,150 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 08:37:50,150 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 08:37:50,151 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 08:37:50,152 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 08:37:50,152 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 08:37:50,153 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 08:37:50,153 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 08:37:50,154 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 08:37:50,154 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 08:37:50,154 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_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan 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 -> Taipan 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 -> d29f12e66e15a9c752fce15327a254c30da4b28a [2018-11-23 08:37:50,184 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 08:37:50,192 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 08:37:50,195 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 08:37:50,196 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 08:37:50,196 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 08:37:50,197 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/../../sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:50,236 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/5dd370ff7/1b4225d7d9504836822a117621f7e5a3/FLAG54162d9b5 [2018-11-23 08:37:50,576 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 08:37:50,577 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/sv-benchmarks/c/float-newlib/float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:50,581 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/5dd370ff7/1b4225d7d9504836822a117621f7e5a3/FLAG54162d9b5 [2018-11-23 08:37:51,001 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/data/5dd370ff7/1b4225d7d9504836822a117621f7e5a3 [2018-11-23 08:37:51,003 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 08:37:51,004 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 08:37:51,005 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 08:37:51,005 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 08:37:51,007 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 08:37:51,007 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,009 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7e82abf3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51, skipping insertion in model container [2018-11-23 08:37:51,009 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,015 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 08:37:51,034 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 08:37:51,186 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:37:51,190 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 08:37:51,232 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 08:37:51,251 INFO L195 MainTranslator]: Completed translation [2018-11-23 08:37:51,252 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51 WrapperNode [2018-11-23 08:37:51,252 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 08:37:51,253 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 08:37:51,253 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 08:37:51,253 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 08:37:51,260 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:37:51" (1/1) ... [2018-11-23 08:37:51,271 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:37:51" (1/1) ... [2018-11-23 08:37:51,321 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 08:37:51,322 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 08:37:51,322 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 08:37:51,322 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 08:37:51,328 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,328 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,331 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,331 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,344 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,352 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,355 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... [2018-11-23 08:37:51,359 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 08:37:51,359 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 08:37:51,359 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 08:37:51,359 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 08:37:51,361 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:37:51,397 INFO L130 BoogieDeclarations]: Found specification of procedure isfinite_float [2018-11-23 08:37:51,397 INFO L138 BoogieDeclarations]: Found implementation of procedure isfinite_float [2018-11-23 08:37:51,397 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 08:37:51,397 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 08:37:51,397 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4 [2018-11-23 08:37:51,397 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 08:37:51,397 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 08:37:51,398 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 08:37:51,398 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 08:37:51,398 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 08:37:51,398 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 08:37:51,398 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 08:37:51,398 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 08:37:51,399 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4 [2018-11-23 08:37:51,399 INFO L130 BoogieDeclarations]: Found specification of procedure __ieee754_hypotf [2018-11-23 08:37:51,399 INFO L138 BoogieDeclarations]: Found implementation of procedure __ieee754_hypotf [2018-11-23 08:37:51,399 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 08:37:51,399 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 08:37:51,399 INFO L130 BoogieDeclarations]: Found specification of procedure __ieee754_sqrtf [2018-11-23 08:37:51,399 INFO L138 BoogieDeclarations]: Found implementation of procedure __ieee754_sqrtf [2018-11-23 08:37:51,512 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 08:37:51,775 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 08:37:51,808 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 08:37:52,494 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 08:37:52,494 INFO L280 CfgBuilder]: Removed 34 assue(true) statements. [2018-11-23 08:37:52,495 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:37:52 BoogieIcfgContainer [2018-11-23 08:37:52,495 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 08:37:52,496 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 08:37:52,497 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 08:37:52,499 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 08:37:52,500 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 08:37:51" (1/3) ... [2018-11-23 08:37:52,500 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@18825988 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:37:52, skipping insertion in model container [2018-11-23 08:37:52,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 08:37:51" (2/3) ... [2018-11-23 08:37:52,501 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@18825988 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 08:37:52, skipping insertion in model container [2018-11-23 08:37:52,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 08:37:52" (3/3) ... [2018-11-23 08:37:52,503 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1271b_true-unreach-call.c [2018-11-23 08:37:52,513 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 08:37:52,520 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 08:37:52,536 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 08:37:52,561 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 08:37:52,562 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 08:37:52,562 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 08:37:52,562 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 08:37:52,562 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 08:37:52,562 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 08:37:52,562 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 08:37:52,562 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 08:37:52,562 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 08:37:52,575 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states. [2018-11-23 08:37:52,580 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 08:37:52,580 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:37:52,581 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] [2018-11-23 08:37:52,582 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:37:52,586 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:37:52,587 INFO L82 PathProgramCache]: Analyzing trace with hash -1957122282, now seen corresponding path program 1 times [2018-11-23 08:37:52,589 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:37:52,590 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:37:52,594 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:37:52,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:37:52,670 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:37:52,687 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:37:52,687 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:37:52,699 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:37:52,699 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 08:37:52,702 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 08:37:52,713 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 08:37:52,714 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 08:37:52,716 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 2 states. [2018-11-23 08:37:52,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:37:52,740 INFO L93 Difference]: Finished difference Result 206 states and 325 transitions. [2018-11-23 08:37:52,740 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 08:37:52,741 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-23 08:37:52,741 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:37:52,750 INFO L225 Difference]: With dead ends: 206 [2018-11-23 08:37:52,750 INFO L226 Difference]: Without dead ends: 102 [2018-11-23 08:37:52,754 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 31 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:37:52,768 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2018-11-23 08:37:52,783 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 102. [2018-11-23 08:37:52,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 102 states. [2018-11-23 08:37:52,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 124 transitions. [2018-11-23 08:37:52,786 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 124 transitions. Word has length 32 [2018-11-23 08:37:52,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:37:52,787 INFO L480 AbstractCegarLoop]: Abstraction has 102 states and 124 transitions. [2018-11-23 08:37:52,787 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 08:37:52,787 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 124 transitions. [2018-11-23 08:37:52,788 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-23 08:37:52,788 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:37:52,788 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, 1, 1, 1, 1] [2018-11-23 08:37:52,788 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:37:52,788 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:37:52,788 INFO L82 PathProgramCache]: Analyzing trace with hash -1007281651, now seen corresponding path program 1 times [2018-11-23 08:37:52,789 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:37:52,789 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:37:52,792 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:37:52,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:37:52,877 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:37:55,761 WARN L180 SmtUtils]: Spent 263.00 ms on a formula simplification that was a NOOP. DAG size: 20 [2018-11-23 08:38:01,477 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:38:01,477 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:38:01,489 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:38:01,490 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2018-11-23 08:38:01,491 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 08:38:01,491 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 08:38:01,492 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=131, Unknown=2, NotChecked=0, Total=156 [2018-11-23 08:38:01,492 INFO L87 Difference]: Start difference. First operand 102 states and 124 transitions. Second operand 13 states. [2018-11-23 08:38:14,923 WARN L180 SmtUtils]: Spent 2.28 s on a formula simplification that was a NOOP. DAG size: 31 [2018-11-23 08:38:46,043 WARN L180 SmtUtils]: Spent 134.00 ms on a formula simplification that was a NOOP. DAG size: 29 [2018-11-23 08:39:35,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:39:35,105 INFO L93 Difference]: Finished difference Result 188 states and 232 transitions. [2018-11-23 08:39:35,125 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 08:39:35,125 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 37 [2018-11-23 08:39:35,126 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:39:35,129 INFO L225 Difference]: With dead ends: 188 [2018-11-23 08:39:35,129 INFO L226 Difference]: Without dead ends: 181 [2018-11-23 08:39:35,130 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 19.8s TimeCoverageRelationStatistics Valid=69, Invalid=390, Unknown=3, NotChecked=0, Total=462 [2018-11-23 08:39:35,131 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 181 states. [2018-11-23 08:39:35,144 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 181 to 110. [2018-11-23 08:39:35,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 110 states. [2018-11-23 08:39:35,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 134 transitions. [2018-11-23 08:39:35,146 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 134 transitions. Word has length 37 [2018-11-23 08:39:35,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:39:35,146 INFO L480 AbstractCegarLoop]: Abstraction has 110 states and 134 transitions. [2018-11-23 08:39:35,146 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 08:39:35,147 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 134 transitions. [2018-11-23 08:39:35,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-23 08:39:35,147 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:39:35,147 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, 1, 1, 1, 1] [2018-11-23 08:39:35,148 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:39:35,148 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:39:35,148 INFO L82 PathProgramCache]: Analyzing trace with hash 2007821967, now seen corresponding path program 1 times [2018-11-23 08:39:35,148 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:39:35,148 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:39:35,152 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:39:35,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:39:35,220 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:39:35,422 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:39:35,423 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:39:35,430 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:39:35,430 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2018-11-23 08:39:35,431 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 08:39:35,431 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 08:39:35,431 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2018-11-23 08:39:35,431 INFO L87 Difference]: Start difference. First operand 110 states and 134 transitions. Second operand 8 states. [2018-11-23 08:40:09,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:40:09,175 INFO L93 Difference]: Finished difference Result 218 states and 264 transitions. [2018-11-23 08:40:09,220 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 08:40:09,221 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 37 [2018-11-23 08:40:09,221 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:40:09,223 INFO L225 Difference]: With dead ends: 218 [2018-11-23 08:40:09,223 INFO L226 Difference]: Without dead ends: 182 [2018-11-23 08:40:09,223 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2018-11-23 08:40:09,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 182 states. [2018-11-23 08:40:09,240 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 182 to 122. [2018-11-23 08:40:09,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 122 states. [2018-11-23 08:40:09,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 147 transitions. [2018-11-23 08:40:09,241 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 147 transitions. Word has length 37 [2018-11-23 08:40:09,241 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:40:09,242 INFO L480 AbstractCegarLoop]: Abstraction has 122 states and 147 transitions. [2018-11-23 08:40:09,242 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 08:40:09,242 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 147 transitions. [2018-11-23 08:40:09,243 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 08:40:09,243 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:40:09,243 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:40:09,243 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:40:09,243 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:40:09,243 INFO L82 PathProgramCache]: Analyzing trace with hash -780723337, now seen corresponding path program 1 times [2018-11-23 08:40:09,244 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:40:09,244 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:40:09,250 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:40:09,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:40:09,334 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:40:09,440 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:40:09,440 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:40:09,448 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:40:09,448 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2018-11-23 08:40:09,449 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 08:40:09,449 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 08:40:09,449 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2018-11-23 08:40:09,449 INFO L87 Difference]: Start difference. First operand 122 states and 147 transitions. Second operand 8 states. [2018-11-23 08:40:32,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:40:32,651 INFO L93 Difference]: Finished difference Result 192 states and 229 transitions. [2018-11-23 08:40:32,700 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 08:40:32,700 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 42 [2018-11-23 08:40:32,700 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:40:32,701 INFO L225 Difference]: With dead ends: 192 [2018-11-23 08:40:32,702 INFO L226 Difference]: Without dead ends: 174 [2018-11-23 08:40:32,702 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2018-11-23 08:40:32,702 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2018-11-23 08:40:32,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 125. [2018-11-23 08:40:32,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 125 states. [2018-11-23 08:40:32,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 151 transitions. [2018-11-23 08:40:32,715 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 151 transitions. Word has length 42 [2018-11-23 08:40:32,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:40:32,716 INFO L480 AbstractCegarLoop]: Abstraction has 125 states and 151 transitions. [2018-11-23 08:40:32,716 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 08:40:32,716 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 151 transitions. [2018-11-23 08:40:32,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 08:40:32,717 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:40:32,717 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:40:32,718 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:40:32,718 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:40:32,718 INFO L82 PathProgramCache]: Analyzing trace with hash -522557899, now seen corresponding path program 1 times [2018-11-23 08:40:32,718 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:40:32,718 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:40:32,726 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:40:32,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:40:32,793 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:40:33,074 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:40:33,074 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:40:33,089 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:40:33,089 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2018-11-23 08:40:33,090 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 08:40:33,090 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 08:40:33,090 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=111, Unknown=0, NotChecked=0, Total=132 [2018-11-23 08:40:33,090 INFO L87 Difference]: Start difference. First operand 125 states and 151 transitions. Second operand 12 states. [2018-11-23 08:41:03,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:41:03,552 INFO L93 Difference]: Finished difference Result 189 states and 223 transitions. [2018-11-23 08:41:03,600 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 08:41:03,600 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 42 [2018-11-23 08:41:03,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:41:03,601 INFO L225 Difference]: With dead ends: 189 [2018-11-23 08:41:03,602 INFO L226 Difference]: Without dead ends: 174 [2018-11-23 08:41:03,602 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=53, Invalid=289, Unknown=0, NotChecked=0, Total=342 [2018-11-23 08:41:03,602 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2018-11-23 08:41:03,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 122. [2018-11-23 08:41:03,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 122 states. [2018-11-23 08:41:03,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 145 transitions. [2018-11-23 08:41:03,617 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 145 transitions. Word has length 42 [2018-11-23 08:41:03,617 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:41:03,617 INFO L480 AbstractCegarLoop]: Abstraction has 122 states and 145 transitions. [2018-11-23 08:41:03,617 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 08:41:03,618 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 145 transitions. [2018-11-23 08:41:03,618 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 08:41:03,618 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:41:03,619 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:41:03,619 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:41:03,619 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:41:03,619 INFO L82 PathProgramCache]: Analyzing trace with hash 178506679, now seen corresponding path program 1 times [2018-11-23 08:41:03,620 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:41:03,620 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:41:03,623 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:41:03,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:41:03,717 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:41:04,113 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification. DAG size of input: 17 DAG size of output: 15 [2018-11-23 08:41:05,834 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:41:05,834 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:41:05,842 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:41:05,842 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2018-11-23 08:41:05,843 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 08:41:05,843 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 08:41:05,843 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=129, Unknown=0, NotChecked=0, Total=156 [2018-11-23 08:41:05,843 INFO L87 Difference]: Start difference. First operand 122 states and 145 transitions. Second operand 13 states. [2018-11-23 08:41:07,841 WARN L180 SmtUtils]: Spent 486.00 ms on a formula simplification. DAG size of input: 25 DAG size of output: 23 [2018-11-23 08:41:09,531 WARN L180 SmtUtils]: Spent 608.00 ms on a formula simplification. DAG size of input: 32 DAG size of output: 29 [2018-11-23 08:41:12,421 WARN L180 SmtUtils]: Spent 1.48 s on a formula simplification. DAG size of input: 36 DAG size of output: 33 [2018-11-23 08:41:33,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:41:33,885 INFO L93 Difference]: Finished difference Result 190 states and 225 transitions. [2018-11-23 08:41:33,886 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 08:41:33,886 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 42 [2018-11-23 08:41:33,887 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:41:33,888 INFO L225 Difference]: With dead ends: 190 [2018-11-23 08:41:33,888 INFO L226 Difference]: Without dead ends: 180 [2018-11-23 08:41:33,888 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 6.9s TimeCoverageRelationStatistics Valid=85, Invalid=295, Unknown=0, NotChecked=0, Total=380 [2018-11-23 08:41:33,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2018-11-23 08:41:33,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 119. [2018-11-23 08:41:33,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 119 states. [2018-11-23 08:41:33,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 141 transitions. [2018-11-23 08:41:33,908 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 141 transitions. Word has length 42 [2018-11-23 08:41:33,908 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:41:33,909 INFO L480 AbstractCegarLoop]: Abstraction has 119 states and 141 transitions. [2018-11-23 08:41:33,909 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 08:41:33,909 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 141 transitions. [2018-11-23 08:41:33,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2018-11-23 08:41:33,910 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:41:33,910 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 08:41:33,910 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:41:33,910 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:41:33,910 INFO L82 PathProgramCache]: Analyzing trace with hash 1199845104, now seen corresponding path program 1 times [2018-11-23 08:41:33,911 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:41:33,911 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/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:41:33,918 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:41:33,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:41:33,974 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:41:34,157 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:41:34,157 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:41:34,165 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:41:34,166 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 08:41:34,166 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 08:41:34,166 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 08:41:34,166 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2018-11-23 08:41:34,166 INFO L87 Difference]: Start difference. First operand 119 states and 141 transitions. Second operand 7 states. [2018-11-23 08:41:51,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:41:51,816 INFO L93 Difference]: Finished difference Result 218 states and 261 transitions. [2018-11-23 08:41:51,855 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 08:41:51,855 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 45 [2018-11-23 08:41:51,856 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:41:51,856 INFO L225 Difference]: With dead ends: 218 [2018-11-23 08:41:51,856 INFO L226 Difference]: Without dead ends: 154 [2018-11-23 08:41:51,857 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 38 SyntacticMatches, 1 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-23 08:41:51,857 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2018-11-23 08:41:51,876 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 118. [2018-11-23 08:41:51,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 118 states. [2018-11-23 08:41:51,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 138 transitions. [2018-11-23 08:41:51,877 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 138 transitions. Word has length 45 [2018-11-23 08:41:51,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:41:51,878 INFO L480 AbstractCegarLoop]: Abstraction has 118 states and 138 transitions. [2018-11-23 08:41:51,878 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 08:41:51,878 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 138 transitions. [2018-11-23 08:41:51,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2018-11-23 08:41:51,878 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:41:51,878 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, 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:41:51,879 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:41:51,879 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:41:51,879 INFO L82 PathProgramCache]: Analyzing trace with hash -1790274438, now seen corresponding path program 1 times [2018-11-23 08:41:51,879 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:41:51,879 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 9 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with mathsat -unsat_core_generation=3 [2018-11-23 08:41:51,882 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:41:52,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:41:52,263 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:41:52,399 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:41:52,399 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:41:52,415 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:41:52,416 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2018-11-23 08:41:52,416 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 08:41:52,416 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 08:41:52,416 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2018-11-23 08:41:52,416 INFO L87 Difference]: Start difference. First operand 118 states and 138 transitions. Second operand 8 states. [2018-11-23 08:42:35,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:42:35,464 INFO L93 Difference]: Finished difference Result 203 states and 236 transitions. [2018-11-23 08:42:35,515 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 08:42:35,515 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 54 [2018-11-23 08:42:35,516 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:42:35,516 INFO L225 Difference]: With dead ends: 203 [2018-11-23 08:42:35,516 INFO L226 Difference]: Without dead ends: 119 [2018-11-23 08:42:35,517 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=43, Invalid=139, Unknown=0, NotChecked=0, Total=182 [2018-11-23 08:42:35,517 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2018-11-23 08:42:35,532 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 96. [2018-11-23 08:42:35,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 96 states. [2018-11-23 08:42:35,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 111 transitions. [2018-11-23 08:42:35,533 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 111 transitions. Word has length 54 [2018-11-23 08:42:35,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:42:35,533 INFO L480 AbstractCegarLoop]: Abstraction has 96 states and 111 transitions. [2018-11-23 08:42:35,534 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 08:42:35,534 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 111 transitions. [2018-11-23 08:42:35,534 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2018-11-23 08:42:35,534 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:42:35,534 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, 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:42:35,535 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:42:35,535 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:42:35,535 INFO L82 PathProgramCache]: Analyzing trace with hash -1515514824, now seen corresponding path program 1 times [2018-11-23 08:42:35,535 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:42:35,535 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 10 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with mathsat -unsat_core_generation=3 [2018-11-23 08:42:35,542 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:42:35,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:42:35,923 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:42:36,282 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:42:36,283 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:42:36,294 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:42:36,294 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 08:42:36,294 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 08:42:36,295 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 08:42:36,295 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2018-11-23 08:42:36,295 INFO L87 Difference]: Start difference. First operand 96 states and 111 transitions. Second operand 9 states. [2018-11-23 08:42:52,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:42:52,981 INFO L93 Difference]: Finished difference Result 127 states and 145 transitions. [2018-11-23 08:42:52,982 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 08:42:52,982 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 54 [2018-11-23 08:42:52,982 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:42:52,983 INFO L225 Difference]: With dead ends: 127 [2018-11-23 08:42:52,983 INFO L226 Difference]: Without dead ends: 97 [2018-11-23 08:42:52,983 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=57, Invalid=153, Unknown=0, NotChecked=0, Total=210 [2018-11-23 08:42:52,984 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2018-11-23 08:42:52,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 90. [2018-11-23 08:42:52,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-23 08:42:52,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 104 transitions. [2018-11-23 08:42:52,996 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 104 transitions. Word has length 54 [2018-11-23 08:42:52,996 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:42:52,996 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 104 transitions. [2018-11-23 08:42:52,996 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 08:42:52,996 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 104 transitions. [2018-11-23 08:42:52,997 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2018-11-23 08:42:52,997 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:42:52,997 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, 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:42:52,997 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:42:52,997 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:42:52,997 INFO L82 PathProgramCache]: Analyzing trace with hash 278430457, now seen corresponding path program 1 times [2018-11-23 08:42:52,997 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:42:52,997 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 11 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with mathsat -unsat_core_generation=3 [2018-11-23 08:42:53,000 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:42:53,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:42:53,361 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:42:53,375 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:42:53,375 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:42:53,385 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:42:53,386 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 08:42:53,386 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 08:42:53,386 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 08:42:53,386 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 08:42:53,386 INFO L87 Difference]: Start difference. First operand 90 states and 104 transitions. Second operand 4 states. [2018-11-23 08:42:57,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:42:57,587 INFO L93 Difference]: Finished difference Result 100 states and 113 transitions. [2018-11-23 08:42:57,630 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 08:42:57,631 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 59 [2018-11-23 08:42:57,631 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:42:57,631 INFO L225 Difference]: With dead ends: 100 [2018-11-23 08:42:57,631 INFO L226 Difference]: Without dead ends: 90 [2018-11-23 08:42:57,632 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 56 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 08:42:57,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2018-11-23 08:42:57,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2018-11-23 08:42:57,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-23 08:42:57,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 103 transitions. [2018-11-23 08:42:57,642 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 103 transitions. Word has length 59 [2018-11-23 08:42:57,642 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:42:57,642 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 103 transitions. [2018-11-23 08:42:57,642 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 08:42:57,642 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 103 transitions. [2018-11-23 08:42:57,643 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 08:42:57,643 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:42:57,643 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, 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:42:57,643 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:42:57,643 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:42:57,643 INFO L82 PathProgramCache]: Analyzing trace with hash -1738369465, now seen corresponding path program 1 times [2018-11-23 08:42:57,643 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:42:57,643 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 12 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with mathsat -unsat_core_generation=3 [2018-11-23 08:42:57,646 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:42:58,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:42:58,057 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:42:58,191 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:42:58,191 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:42:58,202 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:42:58,202 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 08:42:58,203 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 08:42:58,203 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 08:42:58,203 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2018-11-23 08:42:58,203 INFO L87 Difference]: Start difference. First operand 90 states and 103 transitions. Second operand 9 states. [2018-11-23 08:43:15,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:43:15,968 INFO L93 Difference]: Finished difference Result 131 states and 146 transitions. [2018-11-23 08:43:16,012 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 08:43:16,013 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 62 [2018-11-23 08:43:16,013 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:43:16,014 INFO L225 Difference]: With dead ends: 131 [2018-11-23 08:43:16,014 INFO L226 Difference]: Without dead ends: 90 [2018-11-23 08:43:16,014 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=38, Invalid=144, Unknown=0, NotChecked=0, Total=182 [2018-11-23 08:43:16,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2018-11-23 08:43:16,024 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2018-11-23 08:43:16,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-23 08:43:16,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 102 transitions. [2018-11-23 08:43:16,025 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 102 transitions. Word has length 62 [2018-11-23 08:43:16,025 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:43:16,025 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 102 transitions. [2018-11-23 08:43:16,025 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 08:43:16,026 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 102 transitions. [2018-11-23 08:43:16,026 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 08:43:16,026 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:43:16,026 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, 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:43:16,026 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:43:16,027 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:43:16,027 INFO L82 PathProgramCache]: Analyzing trace with hash 1184790533, now seen corresponding path program 1 times [2018-11-23 08:43:16,027 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:43:16,027 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 13 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with mathsat -unsat_core_generation=3 [2018-11-23 08:43:16,034 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:43:16,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:43:16,447 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:43:16,726 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:43:16,726 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:43:16,737 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:43:16,737 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 08:43:16,737 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 08:43:16,738 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 08:43:16,738 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2018-11-23 08:43:16,738 INFO L87 Difference]: Start difference. First operand 90 states and 102 transitions. Second operand 9 states. [2018-11-23 08:43:33,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:43:33,201 INFO L93 Difference]: Finished difference Result 104 states and 115 transitions. [2018-11-23 08:43:33,202 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 08:43:33,202 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 62 [2018-11-23 08:43:33,203 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:43:33,203 INFO L225 Difference]: With dead ends: 104 [2018-11-23 08:43:33,203 INFO L226 Difference]: Without dead ends: 85 [2018-11-23 08:43:33,203 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2018-11-23 08:43:33,204 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-23 08:43:33,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2018-11-23 08:43:33,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 85 states. [2018-11-23 08:43:33,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 95 transitions. [2018-11-23 08:43:33,211 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 95 transitions. Word has length 62 [2018-11-23 08:43:33,212 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:43:33,212 INFO L480 AbstractCegarLoop]: Abstraction has 85 states and 95 transitions. [2018-11-23 08:43:33,212 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 08:43:33,212 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 95 transitions. [2018-11-23 08:43:33,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2018-11-23 08:43:33,212 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 08:43:33,212 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, 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:43:33,212 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 08:43:33,212 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 08:43:33,212 INFO L82 PathProgramCache]: Analyzing trace with hash 1058880090, now seen corresponding path program 1 times [2018-11-23 08:43:33,213 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 08:43:33,213 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_4484e6e7-9e91-418e-905f-cca90a5881f8/bin-2019/utaipan/mathsat Starting monitored process 14 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with mathsat -unsat_core_generation=3 [2018-11-23 08:43:33,216 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 08:43:33,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 08:43:33,731 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 08:43:34,081 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:43:34,081 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 08:43:34,095 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 08:43:34,095 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 08:43:34,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 08:43:34,095 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 08:43:34,095 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2018-11-23 08:43:34,095 INFO L87 Difference]: Start difference. First operand 85 states and 95 transitions. Second operand 9 states. [2018-11-23 08:43:42,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 08:43:42,669 INFO L93 Difference]: Finished difference Result 85 states and 95 transitions. [2018-11-23 08:43:42,717 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 08:43:42,717 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 65 [2018-11-23 08:43:42,717 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 08:43:42,717 INFO L225 Difference]: With dead ends: 85 [2018-11-23 08:43:42,718 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 08:43:42,718 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2018-11-23 08:43:42,718 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 08:43:42,718 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 08:43:42,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 08:43:42,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 08:43:42,719 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 65 [2018-11-23 08:43:42,719 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 08:43:42,719 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 08:43:42,719 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 08:43:42,719 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 08:43:42,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 08:43:42,722 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 08:43:42,776 WARN L250 erpolLogProxyWrapper]: Already inconsistent. [2018-11-23 08:43:42,909 WARN L250 erpolLogProxyWrapper]: Already inconsistent. [2018-11-23 08:43:43,524 WARN L180 SmtUtils]: Spent 551.00 ms on a formula simplification. DAG size of input: 132 DAG size of output: 43 [2018-11-23 08:43:44,072 WARN L180 SmtUtils]: Spent 546.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 48 [2018-11-23 08:43:44,298 WARN L180 SmtUtils]: Spent 225.00 ms on a formula simplification. DAG size of input: 72 DAG size of output: 39 [2018-11-23 08:43:44,566 WARN L180 SmtUtils]: Spent 265.00 ms on a formula simplification. DAG size of input: 72 DAG size of output: 39 [2018-11-23 08:43:45,237 WARN L180 SmtUtils]: Spent 639.00 ms on a formula simplification. DAG size of input: 94 DAG size of output: 62 [2018-11-23 08:43:45,561 WARN L180 SmtUtils]: Spent 323.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 42 [2018-11-23 08:43:45,920 WARN L180 SmtUtils]: Spent 348.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 42 [2018-11-23 08:43:46,211 WARN L180 SmtUtils]: Spent 290.00 ms on a formula simplification. DAG size of input: 54 DAG size of output: 24 [2018-11-23 08:43:46,604 WARN L180 SmtUtils]: Spent 342.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 42 [2018-11-23 08:43:46,636 INFO L448 ceAbstractionStarter]: For program point isnan_floatFINAL(line 211) no Hoare annotation was computed. [2018-11-23 08:43:46,636 INFO L451 ceAbstractionStarter]: At program point isnan_floatENTRY(line 211) the Hoare annotation is: true [2018-11-23 08:43:46,636 INFO L448 ceAbstractionStarter]: For program point isnan_floatEXIT(line 211) no Hoare annotation was computed. [2018-11-23 08:43:46,636 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 08:43:46,636 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 08:43:46,636 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point L216-1(lines 216 220) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L444 ceAbstractionStarter]: At program point L216-2(lines 216 220) the Hoare annotation is: (= isfinite_float_~x |isfinite_float_#in~x|) [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point L216-3(lines 216 220) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point isfinite_floatFINAL(lines 214 223) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L451 ceAbstractionStarter]: At program point isfinite_floatENTRY(lines 214 223) the Hoare annotation is: true [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point isfinite_floatEXIT(lines 214 223) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L451 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-23 08:43:46,637 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 225 245) the Hoare annotation is: true [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 239) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 225 245) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point L239(line 239) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L444 ceAbstractionStarter]: At program point L238(line 238) the Hoare annotation is: (and (exists ((__ieee754_hypotf_~b~0 (_ FloatingPoint 8 24)) (v___ieee754_hypotf_~hb~0_25 (_ BitVec 32))) (and (= main_~res~0 (fp.add roundNearestTiesToEven (let ((.cse0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_25))) (fp ((_ extract 31 31) .cse0) ((_ extract 30 23) .cse0) ((_ extract 22 0) .cse0))) __ieee754_hypotf_~b~0)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_25) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_25) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_25)) (fp.div roundNearestTiesToEven (_ +zero 8 24) (_ +zero 8 24))))) (= main_~y~0 (fp.div roundNearestTiesToEven (_ +zero 8 24) (_ +zero 8 24)))) [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point L238-1(lines 238 241) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 225 245) no Hoare annotation was computed. [2018-11-23 08:43:46,637 INFO L444 ceAbstractionStarter]: At program point L236(line 236) the Hoare annotation is: (and (exists ((v_isfinite_float_~ix~1_5 (_ BitVec 32))) (and (= main_~x~0 (fp ((_ extract 31 31) v_isfinite_float_~ix~1_5) ((_ extract 30 23) v_isfinite_float_~ix~1_5) ((_ extract 22 0) v_isfinite_float_~ix~1_5))) (bvslt (bvand (_ bv2147483647 32) v_isfinite_float_~ix~1_5) (_ bv2139095040 32)))) (= main_~y~0 (fp.div roundNearestTiesToEven (_ +zero 8 24) (_ +zero 8 24)))) [2018-11-23 08:43:46,637 INFO L444 ceAbstractionStarter]: At program point L235(line 235) the Hoare annotation is: (= main_~y~0 (fp.div roundNearestTiesToEven (_ +zero 8 24) (_ +zero 8 24))) [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L236-1(line 236) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L235-1(lines 235 242) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L235-3(lines 235 242) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L126-1(lines 126 127) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L85-1(lines 85 89) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L444 ceAbstractionStarter]: At program point L85-2(lines 85 89) the Hoare annotation is: (and (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y) (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x)) [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L85-3(lines 85 89) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L176-1(lines 176 180) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L444 ceAbstractionStarter]: At program point L176-2(lines 176 180) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y)) (.cse1 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_35 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_35) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_35) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_35)) |__ieee754_hypotf_#in~y|) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_35) (_ bv1484783616 32))))) .cse1) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) .cse0 .cse1 (exists ((v___ieee754_hypotf_~ha~0_32 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_40 (_ BitVec 32))) (and (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_40) v___ieee754_hypotf_~ha~0_32)) (bvslt v___ieee754_hypotf_~ha~0_32 (_ bv2139095040 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_40) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_40) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_40)) |__ieee754_hypotf_#in~y|)))))) [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L176-3(lines 176 180) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L185-1(lines 185 189) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L444 ceAbstractionStarter]: At program point L185-2(lines 185 189) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_27 (_ BitVec 32)) (v___ieee754_hypotf_~ha~0_24 (_ BitVec 32))) (and (bvsgt (bvadd (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_24) (bvneg (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_27))) (_ bv251658240 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_27) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_27) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_27)) |__ieee754_hypotf_#in~y|)))) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) .cse0 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x) (exists ((v___ieee754_hypotf_~ha~0_34 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_41 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~y| (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_41) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_41) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_41))) (bvslt v___ieee754_hypotf_~ha~0_34 (_ bv2139095040 32)) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_41) v___ieee754_hypotf_~ha~0_34))))))) [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L185-3(lines 185 189) no Hoare annotation was computed. [2018-11-23 08:43:46,638 INFO L448 ceAbstractionStarter]: For program point L161-1(lines 161 165) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L444 ceAbstractionStarter]: At program point L161-2(lines 161 165) the Hoare annotation is: (and (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y) (exists ((v___ieee754_hypotf_~hb~0_35 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_35) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_35) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_35)) |__ieee754_hypotf_#in~y|) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_35) (_ bv1484783616 32))))) (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x)) [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point __ieee754_hypotfFINAL(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L145(lines 145 172) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L112(lines 112 116) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L112-1(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L112-2(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point __ieee754_hypotfEXIT(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L451 ceAbstractionStarter]: At program point __ieee754_hypotfENTRY(lines 81 208) the Hoare annotation is: true [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L121(lines 121 144) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L121-1(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L146(lines 146 171) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L97(lines 97 106) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L122(lines 122 129) no Hoare annotation was computed. [2018-11-23 08:43:46,639 INFO L448 ceAbstractionStarter]: For program point L139(lines 139 143) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L139-1(lines 121 144) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L444 ceAbstractionStarter]: At program point L197(line 197) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_27 (_ BitVec 32)) (v___ieee754_hypotf_~ha~0_24 (_ BitVec 32))) (and (bvsgt (bvadd (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_24) (bvneg (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_27))) (_ bv251658240 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_27) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_27) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_27)) |__ieee754_hypotf_#in~y|)))) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) .cse0 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x) (exists ((v___ieee754_hypotf_~ha~0_34 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_41 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~y| (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_41) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_41) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_41))) (bvslt v___ieee754_hypotf_~ha~0_34 (_ bv2139095040 32)) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_41) v___ieee754_hypotf_~ha~0_34))))))) [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L197-1(line 197) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L148(lines 148 171) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L107(lines 107 111) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L107-1(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L124(lines 124 125) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L91-1(lines 91 95) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L124-2(lines 122 129) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L444 ceAbstractionStarter]: At program point L91-2(lines 91 95) the Hoare annotation is: (and (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y) (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x) (exists ((v___ieee754_hypotf_~ha~0_25 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~x| (fp ((_ extract 31 31) v___ieee754_hypotf_~ha~0_25) ((_ extract 30 23) v___ieee754_hypotf_~ha~0_25) ((_ extract 22 0) v___ieee754_hypotf_~ha~0_25))) (= __ieee754_hypotf_~ha~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_25))))) [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L91-3(lines 91 95) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L444 ceAbstractionStarter]: At program point L182(line 182) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y)) (.cse1 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_35 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_35) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_35) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_35)) |__ieee754_hypotf_#in~y|) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_35) (_ bv1484783616 32))))) .cse1) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) .cse0 .cse1 (exists ((v___ieee754_hypotf_~ha~0_32 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_40 (_ BitVec 32))) (and (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_40) v___ieee754_hypotf_~ha~0_32)) (bvslt v___ieee754_hypotf_~ha~0_32 (_ bv2139095040 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_40) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_40) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_40)) |__ieee754_hypotf_#in~y|)))))) [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L182-1(line 182) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L448 ceAbstractionStarter]: For program point L149-1(lines 149 153) no Hoare annotation was computed. [2018-11-23 08:43:46,640 INFO L444 ceAbstractionStarter]: At program point L149-2(lines 149 153) the Hoare annotation is: (let ((.cse0 (= __ieee754_hypotf_~a~0 (fp ((_ extract 31 31) __ieee754_hypotf_~ha~0) ((_ extract 30 23) __ieee754_hypotf_~ha~0) ((_ extract 22 0) __ieee754_hypotf_~ha~0)))) (.cse2 (exists ((v___ieee754_hypotf_~hb~0_35 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_35) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_35) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_35)) |__ieee754_hypotf_#in~y|) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_35) (_ bv1484783616 32)))))) (.cse1 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y)) (.cse3 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x)) (.cse4 (not (bvsgt (bvadd (bvneg __ieee754_hypotf_~hb~0) __ieee754_hypotf_~ha~0) (_ bv251658240 32))))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 (exists ((v___ieee754_hypotf_~hb~0_35 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_35) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_35) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_35)) |__ieee754_hypotf_#in~y|) (= __ieee754_hypotf_~ha~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_35)))) (exists ((v___ieee754_hypotf_~hb~0_32 (_ BitVec 32))) (= __ieee754_hypotf_~hb~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_32)))) (and .cse0 .cse2 (exists ((v___ieee754_hypotf_~ha~0_25 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~x| (fp ((_ extract 31 31) v___ieee754_hypotf_~ha~0_25) ((_ extract 30 23) v___ieee754_hypotf_~ha~0_25) ((_ extract 22 0) v___ieee754_hypotf_~ha~0_25))) (= __ieee754_hypotf_~ha~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_25)))) (exists ((v___ieee754_hypotf_~hb~0_28 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_28) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_28) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_28)) |__ieee754_hypotf_#in~y|) (= __ieee754_hypotf_~hb~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_28)))) .cse1 .cse3 .cse4))) [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L149-3(lines 149 153) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L166(lines 166 170) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L166-1(lines 157 171) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L191-1(lines 191 195) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L444 ceAbstractionStarter]: At program point L191-2(lines 191 195) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_27 (_ BitVec 32)) (v___ieee754_hypotf_~ha~0_24 (_ BitVec 32))) (and (bvsgt (bvadd (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_24) (bvneg (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_27))) (_ bv251658240 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_27) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_27) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_27)) |__ieee754_hypotf_#in~y|)))) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) .cse0 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x) (exists ((v___ieee754_hypotf_~ha~0_34 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_41 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~y| (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_41) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_41) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_41))) (bvslt v___ieee754_hypotf_~ha~0_34 (_ bv2139095040 32)) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_41) v___ieee754_hypotf_~ha~0_34))))))) [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L191-3(lines 191 195) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L175(lines 175 198) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L175-2(lines 81 208) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L200-1(lines 200 204) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L444 ceAbstractionStarter]: At program point L200-2(lines 200 204) the Hoare annotation is: (let ((.cse0 (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y))) (or (and .cse0 (exists ((v___ieee754_hypotf_~hb~0_27 (_ BitVec 32)) (v___ieee754_hypotf_~ha~0_24 (_ BitVec 32))) (and (bvsgt (bvadd (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_24) (bvneg (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_27))) (_ bv251658240 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_27) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_27) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_27)) |__ieee754_hypotf_#in~y|)))) (and (= (_ bv68 32) __ieee754_hypotf_~k~0) (exists ((v___ieee754_hypotf_~ha~0_32 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_40 (_ BitVec 32))) (and (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_40) v___ieee754_hypotf_~ha~0_32)) (bvslt v___ieee754_hypotf_~ha~0_32 (_ bv2139095040 32)) (= (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_40) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_40) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_40)) |__ieee754_hypotf_#in~y|))) (and .cse0 (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x))))) [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L134-1(lines 134 138) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L200-3(lines 200 204) no Hoare annotation was computed. [2018-11-23 08:43:46,641 INFO L444 ceAbstractionStarter]: At program point L134-2(lines 134 138) the Hoare annotation is: (and (= (_ bv68 32) __ieee754_hypotf_~k~0) (= |__ieee754_hypotf_#in~y| __ieee754_hypotf_~y) (exists ((v___ieee754_hypotf_~hb~0_32 (_ BitVec 32))) (= (bvadd __ieee754_hypotf_~hb~0 (_ bv570425344 32)) (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_32))) (= |__ieee754_hypotf_#in~x| __ieee754_hypotf_~x) (exists ((v___ieee754_hypotf_~ha~0_34 (_ BitVec 32)) (v___ieee754_hypotf_~hb~0_41 (_ BitVec 32))) (and (= |__ieee754_hypotf_#in~y| (fp ((_ extract 31 31) v___ieee754_hypotf_~hb~0_41) ((_ extract 30 23) v___ieee754_hypotf_~hb~0_41) ((_ extract 22 0) v___ieee754_hypotf_~hb~0_41))) (bvslt v___ieee754_hypotf_~ha~0_34 (_ bv2139095040 32)) (not (bvsgt (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_41) v___ieee754_hypotf_~ha~0_34)))) (exists ((v___ieee754_hypotf_~hb~0_30 (_ BitVec 32))) (= __ieee754_hypotf_~ha~0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~hb~0_30))) (exists ((v___ieee754_hypotf_~ha~0_27 (_ BitVec 32))) (let ((.cse0 (bvand (_ bv2147483647 32) v___ieee754_hypotf_~ha~0_27))) (and (not (bvsgt (bvadd .cse0 (bvneg (bvadd __ieee754_hypotf_~hb~0 (_ bv570425344 32)))) (_ bv251658240 32))) (bvsgt .cse0 (_ bv1484783616 32)))))) [2018-11-23 08:43:46,641 INFO L448 ceAbstractionStarter]: For program point L35-2(lines 35 39) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L31(lines 31 32) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L52(lines 52 56) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L19-1(lines 19 23) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L52-2(lines 52 56) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L451 ceAbstractionStarter]: At program point L19-2(lines 19 23) the Hoare annotation is: true [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L19-3(lines 19 23) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L73-1(lines 73 77) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L451 ceAbstractionStarter]: At program point L73-2(lines 73 77) the Hoare annotation is: true [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L73-3(lines 73 77) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L36-2(lines 36 37) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L451 ceAbstractionStarter]: At program point L36-3(lines 36 37) the Hoare annotation is: true [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L65(lines 65 68) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L36-4(lines 36 37) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L61(lines 61 70) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L451 ceAbstractionStarter]: At program point __ieee754_sqrtfENTRY(lines 14 79) the Hoare annotation is: true [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point __ieee754_sqrtfFINAL(lines 14 79) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L29(lines 29 30) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point __ieee754_sqrtfEXIT(lines 14 79) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L451 ceAbstractionStarter]: At program point L50-2(lines 50 59) the Hoare annotation is: true [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L50-3(lines 14 79) no Hoare annotation was computed. [2018-11-23 08:43:46,642 INFO L448 ceAbstractionStarter]: For program point L42(lines 42 43) no Hoare annotation was computed. [2018-11-23 08:43:46,643 INFO L448 ceAbstractionStarter]: For program point L42-2(lines 42 43) no Hoare annotation was computed. [2018-11-23 08:43:46,643 INFO L448 ceAbstractionStarter]: For program point L63(lines 63 69) no Hoare annotation was computed. [2018-11-23 08:43:46,643 INFO L448 ceAbstractionStarter]: For program point L26(lines 26 27) no Hoare annotation was computed. [2018-11-23 08:43:46,643 INFO L448 ceAbstractionStarter]: For program point L35(lines 35 39) no Hoare annotation was computed. [2018-11-23 08:43:46,648 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.UnsupportedOperationException: translation of (bvneg (_ BitVec 32) (_ BitVec 32)) not yet implemented, please contact Matthias at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:209) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:165) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:165) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:165) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:446) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:165) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:165) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:129) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator.translateExpression(RCFGBacktranslator.java:394) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator.translateExpression(RCFGBacktranslator.java:1) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateExpression(ModelTranslationContainer.java:105) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateExpressionToString(ModelTranslationContainer.java:89) at de.uni_freiburg.informatik.ultimate.core.lib.results.InvariantResult.getLongDescription(InvariantResult.java:65) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportResult(TraceAbstractionStarter.java:560) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.createInvariantResults(TraceAbstractionStarter.java:257) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:214) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2018-11-23 08:43:46,649 INFO L168 Benchmark]: Toolchain (without parser) took 355645.75 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 206.6 MB). Free memory was 951.9 MB in the beginning and 1.1 GB in the end (delta: -110.6 MB). Peak memory consumption was 367.4 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,650 INFO L168 Benchmark]: CDTParser took 0.13 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:43:46,650 INFO L168 Benchmark]: CACSL2BoogieTranslator took 247.78 ms. Allocated memory is still 1.0 GB. Free memory was 951.9 MB in the beginning and 930.4 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,650 INFO L168 Benchmark]: Boogie Procedure Inliner took 68.71 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 105.4 MB). Free memory was 930.4 MB in the beginning and 1.1 GB in the end (delta: -169.2 MB). Peak memory consumption was 15.5 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,651 INFO L168 Benchmark]: Boogie Preprocessor took 37.21 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,651 INFO L168 Benchmark]: RCFGBuilder took 1135.95 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 47.4 MB). Peak memory consumption was 47.4 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,651 INFO L168 Benchmark]: TraceAbstraction took 354152.86 ms. Allocated memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: 101.2 MB). Free memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: -17.1 MB). Peak memory consumption was 355.5 MB. Max. memory is 11.5 GB. [2018-11-23 08:43:46,654 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.13 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 247.78 ms. Allocated memory is still 1.0 GB. Free memory was 951.9 MB in the beginning and 930.4 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 68.71 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 105.4 MB). Free memory was 930.4 MB in the beginning and 1.1 GB in the end (delta: -169.2 MB). Peak memory consumption was 15.5 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 37.21 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. * RCFGBuilder took 1135.95 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 47.4 MB). Peak memory consumption was 47.4 MB. Max. memory is 11.5 GB. * TraceAbstraction took 354152.86 ms. Allocated memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: 101.2 MB). Free memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: -17.1 MB). Peak memory consumption was 355.5 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 239]: 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: 50]: Loop Invariant Derived loop invariant: 1 - ExceptionOrErrorResult: UnsupportedOperationException: translation of (bvneg (_ BitVec 32) (_ BitVec 32)) not yet implemented, please contact Matthias de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: UnsupportedOperationException: translation of (bvneg (_ BitVec 32) (_ BitVec 32)) not yet implemented, please contact Matthias: de.uni_freiburg.informatik.ultimate.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:209) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...