./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/float_req_bl_1130b_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_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak --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 Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash bcbee6ed75bef52b13066d34c45df2688a1a6e18 ....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 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_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak --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 Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash bcbee6ed75bef52b13066d34c45df2688a1a6e18 ....................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 05:51:21,781 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 05:51:21,782 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 05:51:21,789 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 05:51:21,789 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 05:51:21,789 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 05:51:21,790 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 05:51:21,791 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 05:51:21,792 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 05:51:21,793 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 05:51:21,793 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 05:51:21,794 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 05:51:21,794 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 05:51:21,795 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 05:51:21,796 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 05:51:21,796 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 05:51:21,797 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 05:51:21,798 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 05:51:21,799 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 05:51:21,800 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 05:51:21,801 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 05:51:21,802 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 05:51:21,803 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 05:51:21,804 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 05:51:21,804 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 05:51:21,804 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 05:51:21,805 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 05:51:21,805 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 05:51:21,806 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 05:51:21,806 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 05:51:21,807 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 05:51:21,807 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 05:51:21,807 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 05:51:21,807 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 05:51:21,808 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 05:51:21,809 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 05:51:21,809 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf [2018-11-23 05:51:21,816 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 05:51:21,817 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 05:51:21,817 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 05:51:21,817 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 05:51:21,818 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 05:51:21,818 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 05:51:21,818 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 05:51:21,818 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 05:51:21,819 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 05:51:21,820 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 05:51:21,820 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 05:51:21,820 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 05:51:21,820 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 05:51:21,820 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 05:51:21,820 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 05:51:21,820 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 05:51:21,821 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 05:51:21,821 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 05:51:21,821 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 05:51:21,821 INFO L133 SettingsManager]: * Trace refinement strategy=PENGUIN [2018-11-23 05:51:21,821 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 05:51:21,821 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 05:51:21,821 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_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak 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 -> Kojak 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 -> bcbee6ed75bef52b13066d34c45df2688a1a6e18 [2018-11-23 05:51:21,845 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 05:51:21,854 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 05:51:21,857 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 05:51:21,858 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 05:51:21,858 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 05:51:21,859 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c [2018-11-23 05:51:21,909 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/c41da594f/4daca894a06f4d25b7c26a9aa328aa78/FLAG2a9d827e4 [2018-11-23 05:51:22,253 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 05:51:22,253 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c [2018-11-23 05:51:22,258 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/c41da594f/4daca894a06f4d25b7c26a9aa328aa78/FLAG2a9d827e4 [2018-11-23 05:51:22,680 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/c41da594f/4daca894a06f4d25b7c26a9aa328aa78 [2018-11-23 05:51:22,683 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 05:51:22,684 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 05:51:22,684 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 05:51:22,684 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 05:51:22,687 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 05:51:22,687 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,689 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2e9eadab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22, skipping insertion in model container [2018-11-23 05:51:22,689 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,697 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 05:51:22,713 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 05:51:22,848 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:51:22,851 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 05:51:22,874 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:51:22,886 INFO L195 MainTranslator]: Completed translation [2018-11-23 05:51:22,887 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22 WrapperNode [2018-11-23 05:51:22,887 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 05:51:22,887 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 05:51:22,887 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 05:51:22,887 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 05:51:22,933 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,943 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,968 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 05:51:22,968 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 05:51:22,968 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 05:51:22,968 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 05:51:22,976 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,976 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,979 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,979 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,989 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,996 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:22,998 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... [2018-11-23 05:51:23,001 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 05:51:23,001 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 05:51:23,002 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 05:51:23,002 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 05:51:23,003 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:22" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (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:10000 [2018-11-23 05:51:23,046 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 05:51:23,046 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 05:51:23,046 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 05:51:23,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 05:51:23,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 05:51:23,047 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 05:51:23,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 05:51:23,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 05:51:23,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 05:51:23,422 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 05:51:23,422 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-23 05:51:23,423 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:23 BoogieIcfgContainer [2018-11-23 05:51:23,423 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 05:51:23,423 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 05:51:23,423 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 05:51:23,431 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 05:51:23,431 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:23" (1/1) ... [2018-11-23 05:51:23,440 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:51:23,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:23,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 40 states and 66 transitions. [2018-11-23 05:51:23,467 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 66 transitions. [2018-11-23 05:51:23,469 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-23 05:51:23,469 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:23,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:23,549 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 05:51:23,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:23,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 40 states and 61 transitions. [2018-11-23 05:51:23,559 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 61 transitions. [2018-11-23 05:51:23,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-23 05:51:23,560 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:23,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:51:23,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:51:23,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:51:23,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:51:23,692 WARN L493 CodeCheckObserver]: This program is UNSAFE, Check terminated with 2 iterations. ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~one_fmod~0 := 1.0;call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8);call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4);havoc main_#res;havoc main_#t~nondet14, main_#t~ret15, main_#t~ret16, main_#t~short17, main_~res~0, main_~x~0, main_~y~0;main_~x~0 := ~someUnaryFLOAToperation(0.0);main_~y~0 := main_#t~nondet14;havoc main_#t~nondet14; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0);fmod_float_#in~x, fmod_float_#in~y := main_~x~0, main_~y~0;havoc fmod_float_#res;havoc fmod_float_#t~mem0, fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, fmod_float_#t~mem2, fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, fmod_float_#t~mem4, fmod_float_#t~mem6, fmod_float_#t~post5, fmod_float_#t~mem7, fmod_float_#t~mem8, fmod_float_#t~union9, fmod_float_~#sf_u~0.base, fmod_float_~#sf_u~0.offset, fmod_float_#t~mem10, fmod_float_#t~union11, fmod_float_~#sf_u~1.base, fmod_float_~#sf_u~1.offset, fmod_float_~x, fmod_float_~y, fmod_float_~n~0, fmod_float_~hx~0, fmod_float_~hy~0, fmod_float_~hz~0, fmod_float_~ix~0, fmod_float_~iy~0, fmod_float_~sx~0, fmod_float_~i~0;fmod_float_~x := fmod_float_#in~x;fmod_float_~y := fmod_float_#in~y;havoc fmod_float_~n~0;havoc fmod_float_~hx~0;havoc fmod_float_~hy~0;havoc fmod_float_~hz~0;havoc fmod_float_~ix~0;havoc fmod_float_~iy~0;havoc fmod_float_~sx~0;havoc fmod_float_~i~0; VAL [ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset := #Ultimate.alloc(4);call write~real(fmod_float_~x, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4);call fmod_float_#t~mem0 := read~int(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4);fmod_float_~hx~0 := (if fmod_float_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem0 % 4294967296 % 4294967296 else fmod_float_#t~mem0 % 4294967296 % 4294967296 - 4294967296);call write~real(fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4);havoc fmod_float_#t~union1;havoc fmod_float_#t~mem0;call ULTIMATE.dealloc(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset);havoc fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset; VAL [ULTIMATE.start_fmod_float_~hx~0=0, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [ULTIMATE.start_fmod_float_~hx~0=0, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset := #Ultimate.alloc(4);call write~real(fmod_float_~y, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4);call fmod_float_#t~mem2 := read~int(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4);fmod_float_~hy~0 := (if fmod_float_#t~mem2 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem2 % 4294967296 % 4294967296 else fmod_float_#t~mem2 % 4294967296 % 4294967296 - 4294967296);call write~real(fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4);havoc fmod_float_#t~union3;havoc fmod_float_#t~mem2;call ULTIMATE.dealloc(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset);havoc fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset; VAL [ULTIMATE.start_fmod_float_~hx~0=0, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [ULTIMATE.start_fmod_float_~hx~0=0, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] fmod_float_~sx~0 := (if ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296);fmod_float_~hx~0 := ~bitwiseXor(fmod_float_~hx~0, fmod_float_~sx~0);fmod_float_~hy~0 := ~bitwiseAnd(fmod_float_~hy~0, 2147483647); VAL [ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume (0 == fmod_float_~hy~0 || !(fmod_float_~hx~0 < 2139095040)) || fmod_float_~hy~0 > 2139095040;fmod_float_#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y), ~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y)); VAL [ULTIMATE.start_fmod_float_~hx~0=2139095040, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] main_#t~ret15 := fmod_float_#res;main_~res~0 := main_#t~ret15;havoc main_#t~ret15;main_#t~short17 := ~someBinaryFLOATComparisonOperation(main_~res~0, ~someUnaryFLOAToperation(0.0)); VAL [ULTIMATE.start_fmod_float_~hx~0=2139095040, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~res~0=9.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |ULTIMATE.start_fmod_float_#res|=9.0, |ULTIMATE.start_main_#t~short17|=false, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !main_#t~short17; VAL [ULTIMATE.start_fmod_float_~hx~0=2139095040, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~res~0=9.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |ULTIMATE.start_fmod_float_#res|=9.0, |ULTIMATE.start_main_#t~short17|=false, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !main_#t~short17;havoc main_#t~short17;havoc main_#t~ret16; VAL [ULTIMATE.start_fmod_float_~hx~0=2139095040, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~res~0=9.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |ULTIMATE.start_fmod_float_#res|=9.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !false; VAL [ULTIMATE.start_fmod_float_~hx~0=2139095040, ULTIMATE.start_fmod_float_~hy~0=0, ULTIMATE.start_fmod_float_~sx~0=8879, ULTIMATE.start_fmod_float_~x=7.0, ULTIMATE.start_fmod_float_~y=8.0, ULTIMATE.start_main_~res~0=9.0, ULTIMATE.start_main_~x~0=7.0, ULTIMATE.start_main_~y~0=8.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_fmod_float_#in~x|=7.0, |ULTIMATE.start_fmod_float_#in~y|=8.0, |ULTIMATE.start_fmod_float_#res|=9.0, |~#Zero_fmod~0.base|=2, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); [?] havoc main_#res; [?] havoc main_#t~nondet14, main_#t~ret15, main_#t~ret16, main_#t~short17, main_~res~0, main_~x~0, main_~y~0; [L126] main_~x~0 := ~someUnaryFLOAToperation(0.0); [L127] main_~y~0 := main_#t~nondet14; [L127] havoc main_#t~nondet14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L129-L138] assume ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0); [L131] fmod_float_#in~x, fmod_float_#in~y := main_~x~0, main_~y~0; [L131] havoc fmod_float_#res; [L131] havoc fmod_float_#t~mem0, fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, fmod_float_#t~mem2, fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, fmod_float_#t~mem4, fmod_float_#t~mem6, fmod_float_#t~post5, fmod_float_#t~mem7, fmod_float_#t~mem8, fmod_float_#t~union9, fmod_float_~#sf_u~0.base, fmod_float_~#sf_u~0.offset, fmod_float_#t~mem10, fmod_float_#t~union11, fmod_float_~#sf_u~1.base, fmod_float_~#sf_u~1.offset, fmod_float_~x, fmod_float_~y, fmod_float_~n~0, fmod_float_~hx~0, fmod_float_~hy~0, fmod_float_~hz~0, fmod_float_~ix~0, fmod_float_~iy~0, fmod_float_~sx~0, fmod_float_~i~0; [L17-L105] fmod_float_~x := fmod_float_#in~x; [L17-L105] fmod_float_~y := fmod_float_#in~y; [L18] havoc fmod_float_~n~0; [L18] havoc fmod_float_~hx~0; [L18] havoc fmod_float_~hy~0; [L18] havoc fmod_float_~hz~0; [L18] havoc fmod_float_~ix~0; [L18] havoc fmod_float_~iy~0; [L18] havoc fmod_float_~sx~0; [L18] havoc fmod_float_~i~0; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L21] call fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(fmod_float_~x, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] call fmod_float_#t~mem0 := read~int(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] fmod_float_~hx~0 := (if fmod_float_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem0 % 4294967296 % 4294967296 else fmod_float_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] havoc fmod_float_#t~union1; [L23] havoc fmod_float_#t~mem0; [L21] call ULTIMATE.dealloc(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset); [L21] havoc fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L26] call fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(fmod_float_~y, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] call fmod_float_#t~mem2 := read~int(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] fmod_float_~hy~0 := (if fmod_float_#t~mem2 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem2 % 4294967296 % 4294967296 else fmod_float_#t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] havoc fmod_float_#t~union3; [L28] havoc fmod_float_#t~mem2; [L26] call ULTIMATE.dealloc(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset); [L26] havoc fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~hy~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L30] fmod_float_~sx~0 := (if ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] fmod_float_~hx~0 := ~bitwiseXor(fmod_float_~hx~0, fmod_float_~sx~0); [L32] fmod_float_~hy~0 := ~bitwiseAnd(fmod_float_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L34-L35] assume (0 == fmod_float_~hy~0 || !(fmod_float_~hx~0 < 2139095040)) || fmod_float_~hy~0 > 2139095040; [L35] fmod_float_#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y), ~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y)); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L131] main_#t~ret15 := fmod_float_#res; [L131] main_~res~0 := main_#t~ret15; [L131] havoc main_#t~ret15; [L134] main_#t~short17 := ~someBinaryFLOATComparisonOperation(main_~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L134] assume !main_#t~short17; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L134-L137] assume !main_#t~short17; [L134] havoc main_#t~short17; [L134] havoc main_#t~ret16; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); [?] havoc main_#res; [?] havoc main_#t~nondet14, main_#t~ret15, main_#t~ret16, main_#t~short17, main_~res~0, main_~x~0, main_~y~0; [L126] main_~x~0 := ~someUnaryFLOAToperation(0.0); [L127] main_~y~0 := main_#t~nondet14; [L127] havoc main_#t~nondet14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L129-L138] assume ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0); [L131] fmod_float_#in~x, fmod_float_#in~y := main_~x~0, main_~y~0; [L131] havoc fmod_float_#res; [L131] havoc fmod_float_#t~mem0, fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, fmod_float_#t~mem2, fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, fmod_float_#t~mem4, fmod_float_#t~mem6, fmod_float_#t~post5, fmod_float_#t~mem7, fmod_float_#t~mem8, fmod_float_#t~union9, fmod_float_~#sf_u~0.base, fmod_float_~#sf_u~0.offset, fmod_float_#t~mem10, fmod_float_#t~union11, fmod_float_~#sf_u~1.base, fmod_float_~#sf_u~1.offset, fmod_float_~x, fmod_float_~y, fmod_float_~n~0, fmod_float_~hx~0, fmod_float_~hy~0, fmod_float_~hz~0, fmod_float_~ix~0, fmod_float_~iy~0, fmod_float_~sx~0, fmod_float_~i~0; [L17-L105] fmod_float_~x := fmod_float_#in~x; [L17-L105] fmod_float_~y := fmod_float_#in~y; [L18] havoc fmod_float_~n~0; [L18] havoc fmod_float_~hx~0; [L18] havoc fmod_float_~hy~0; [L18] havoc fmod_float_~hz~0; [L18] havoc fmod_float_~ix~0; [L18] havoc fmod_float_~iy~0; [L18] havoc fmod_float_~sx~0; [L18] havoc fmod_float_~i~0; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L21] call fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(fmod_float_~x, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] call fmod_float_#t~mem0 := read~int(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] fmod_float_~hx~0 := (if fmod_float_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem0 % 4294967296 % 4294967296 else fmod_float_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(fmod_float_#t~union1, fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset, 4); [L23] havoc fmod_float_#t~union1; [L23] havoc fmod_float_#t~mem0; [L21] call ULTIMATE.dealloc(fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset); [L21] havoc fmod_float_~#gf_u~0.base, fmod_float_~#gf_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L26] call fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(fmod_float_~y, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] call fmod_float_#t~mem2 := read~int(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] fmod_float_~hy~0 := (if fmod_float_#t~mem2 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem2 % 4294967296 % 4294967296 else fmod_float_#t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(fmod_float_#t~union3, fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset, 4); [L28] havoc fmod_float_#t~union3; [L28] havoc fmod_float_#t~mem2; [L26] call ULTIMATE.dealloc(fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset); [L26] havoc fmod_float_~#gf_u~1.base, fmod_float_~#gf_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~hy~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L30] fmod_float_~sx~0 := (if ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] fmod_float_~hx~0 := ~bitwiseXor(fmod_float_~hx~0, fmod_float_~sx~0); [L32] fmod_float_~hy~0 := ~bitwiseAnd(fmod_float_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L34-L35] assume (0 == fmod_float_~hy~0 || !(fmod_float_~hx~0 < 2139095040)) || fmod_float_~hy~0 > 2139095040; [L35] fmod_float_#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y), ~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y)); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L131] main_#t~ret15 := fmod_float_#res; [L131] main_~res~0 := main_#t~ret15; [L131] havoc main_#t~ret15; [L134] main_#t~short17 := ~someBinaryFLOATComparisonOperation(main_~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L134] assume !main_#t~short17; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L134-L137] assume !main_#t~short17; [L134] havoc main_#t~short17; [L134] havoc main_#t~ret16; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL.base=0, #NULL.offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0.base=2, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); [?] havoc main_#res; [?] havoc main_#t~nondet14, main_#t~ret15, main_#t~ret16, main_#t~short17, main_~res~0, main_~x~0, main_~y~0; [L126] main_~x~0 := ~someUnaryFLOAToperation(0.0); [L127] main_~y~0 := main_#t~nondet14; [L127] havoc main_#t~nondet14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L129] COND TRUE ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) [L131] fmod_float_#in~x, fmod_float_#in~y := main_~x~0, main_~y~0; [L131] havoc fmod_float_#res; [L131] havoc fmod_float_#t~mem0, fmod_float_#t~union1, fmod_float_~#gf_u~0, fmod_float_#t~mem2, fmod_float_#t~union3, fmod_float_~#gf_u~1, fmod_float_#t~mem4, fmod_float_#t~mem6, fmod_float_#t~post5, fmod_float_#t~mem7, fmod_float_#t~mem8, fmod_float_#t~union9, fmod_float_~#sf_u~0, fmod_float_#t~mem10, fmod_float_#t~union11, fmod_float_~#sf_u~1, fmod_float_~x, fmod_float_~y, fmod_float_~n~0, fmod_float_~hx~0, fmod_float_~hy~0, fmod_float_~hz~0, fmod_float_~ix~0, fmod_float_~iy~0, fmod_float_~sx~0, fmod_float_~i~0; [L17-L105] fmod_float_~x := fmod_float_#in~x; [L17-L105] fmod_float_~y := fmod_float_#in~y; [L18] havoc fmod_float_~n~0; [L18] havoc fmod_float_~hx~0; [L18] havoc fmod_float_~hy~0; [L18] havoc fmod_float_~hz~0; [L18] havoc fmod_float_~ix~0; [L18] havoc fmod_float_~iy~0; [L18] havoc fmod_float_~sx~0; [L18] havoc fmod_float_~i~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L21] FCALL call fmod_float_~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(fmod_float_~x, { base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] FCALL call fmod_float_#t~mem0 := read~int({ base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] fmod_float_~hx~0 := (if fmod_float_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem0 % 4294967296 % 4294967296 else fmod_float_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(fmod_float_#t~union1, { base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] havoc fmod_float_#t~union1; [L23] havoc fmod_float_#t~mem0; [L21] FCALL call ULTIMATE.dealloc(fmod_float_~#gf_u~0); [L21] havoc fmod_float_~#gf_u~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L26] FCALL call fmod_float_~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(fmod_float_~y, { base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] FCALL call fmod_float_#t~mem2 := read~int({ base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] fmod_float_~hy~0 := (if fmod_float_#t~mem2 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem2 % 4294967296 % 4294967296 else fmod_float_#t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(fmod_float_#t~union3, { base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] havoc fmod_float_#t~union3; [L28] havoc fmod_float_#t~mem2; [L26] FCALL call ULTIMATE.dealloc(fmod_float_~#gf_u~1); [L26] havoc fmod_float_~#gf_u~1; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~hy~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L30] fmod_float_~sx~0 := (if ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] fmod_float_~hx~0 := ~bitwiseXor(fmod_float_~hx~0, fmod_float_~sx~0); [L32] fmod_float_~hy~0 := ~bitwiseAnd(fmod_float_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L34] COND TRUE (0 == fmod_float_~hy~0 || !(fmod_float_~hx~0 < 2139095040)) || fmod_float_~hy~0 > 2139095040 [L35] fmod_float_#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y), ~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y)); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L131] main_#t~ret15 := fmod_float_#res; [L131] main_~res~0 := main_#t~ret15; [L131] havoc main_#t~ret15; [L134] main_#t~short17 := ~someBinaryFLOATComparisonOperation(main_~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND FALSE !(main_#t~short17) VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND TRUE !main_#t~short17 [L134] havoc main_#t~short17; [L134] havoc main_#t~ret16; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); [?] havoc main_#res; [?] havoc main_#t~nondet14, main_#t~ret15, main_#t~ret16, main_#t~short17, main_~res~0, main_~x~0, main_~y~0; [L126] main_~x~0 := ~someUnaryFLOAToperation(0.0); [L127] main_~y~0 := main_#t~nondet14; [L127] havoc main_#t~nondet14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L129] COND TRUE ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(main_~y~0, 0.0) [L131] fmod_float_#in~x, fmod_float_#in~y := main_~x~0, main_~y~0; [L131] havoc fmod_float_#res; [L131] havoc fmod_float_#t~mem0, fmod_float_#t~union1, fmod_float_~#gf_u~0, fmod_float_#t~mem2, fmod_float_#t~union3, fmod_float_~#gf_u~1, fmod_float_#t~mem4, fmod_float_#t~mem6, fmod_float_#t~post5, fmod_float_#t~mem7, fmod_float_#t~mem8, fmod_float_#t~union9, fmod_float_~#sf_u~0, fmod_float_#t~mem10, fmod_float_#t~union11, fmod_float_~#sf_u~1, fmod_float_~x, fmod_float_~y, fmod_float_~n~0, fmod_float_~hx~0, fmod_float_~hy~0, fmod_float_~hz~0, fmod_float_~ix~0, fmod_float_~iy~0, fmod_float_~sx~0, fmod_float_~i~0; [L17-L105] fmod_float_~x := fmod_float_#in~x; [L17-L105] fmod_float_~y := fmod_float_#in~y; [L18] havoc fmod_float_~n~0; [L18] havoc fmod_float_~hx~0; [L18] havoc fmod_float_~hy~0; [L18] havoc fmod_float_~hz~0; [L18] havoc fmod_float_~ix~0; [L18] havoc fmod_float_~iy~0; [L18] havoc fmod_float_~sx~0; [L18] havoc fmod_float_~i~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L21] FCALL call fmod_float_~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(fmod_float_~x, { base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] FCALL call fmod_float_#t~mem0 := read~int({ base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] fmod_float_~hx~0 := (if fmod_float_#t~mem0 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem0 % 4294967296 % 4294967296 else fmod_float_#t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(fmod_float_#t~union1, { base: fmod_float_~#gf_u~0!base, offset: fmod_float_~#gf_u~0!offset }, 4); [L23] havoc fmod_float_#t~union1; [L23] havoc fmod_float_#t~mem0; [L21] FCALL call ULTIMATE.dealloc(fmod_float_~#gf_u~0); [L21] havoc fmod_float_~#gf_u~0; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L26] FCALL call fmod_float_~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(fmod_float_~y, { base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] FCALL call fmod_float_#t~mem2 := read~int({ base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] fmod_float_~hy~0 := (if fmod_float_#t~mem2 % 4294967296 % 4294967296 <= 2147483647 then fmod_float_#t~mem2 % 4294967296 % 4294967296 else fmod_float_#t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(fmod_float_#t~union3, { base: fmod_float_~#gf_u~1!base, offset: fmod_float_~#gf_u~1!offset }, 4); [L28] havoc fmod_float_#t~union3; [L28] havoc fmod_float_#t~mem2; [L26] FCALL call ULTIMATE.dealloc(fmod_float_~#gf_u~1); [L26] havoc fmod_float_~#gf_u~1; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=0, fmod_float_~hy~0=0, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L30] fmod_float_~sx~0 := (if ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(fmod_float_~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] fmod_float_~hx~0 := ~bitwiseXor(fmod_float_~hx~0, fmod_float_~sx~0); [L32] fmod_float_~hy~0 := ~bitwiseAnd(fmod_float_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L34] COND TRUE (0 == fmod_float_~hy~0 || !(fmod_float_~hx~0 < 2139095040)) || fmod_float_~hy~0 > 2139095040 [L35] fmod_float_#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y), ~someBinaryArithmeticFLOAToperation(fmod_float_~x, fmod_float_~y)); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L131] main_#t~ret15 := fmod_float_#res; [L131] main_~res~0 := main_#t~ret15; [L131] havoc main_#t~ret15; [L134] main_#t~short17 := ~someBinaryFLOATComparisonOperation(main_~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND FALSE !(main_#t~short17) VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_#t~short17=false, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND TRUE !main_#t~short17 [L134] havoc main_#t~short17; [L134] havoc main_#t~ret16; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL!base=0, #NULL!offset=0, fmod_float_#in~x=7.0, fmod_float_#in~y=8.0, fmod_float_#res=9.0, fmod_float_~hx~0=2139095040, fmod_float_~hy~0=0, fmod_float_~sx~0=8879, fmod_float_~x=7.0, fmod_float_~y=8.0, main_~res~0=9.0, main_~x~0=7.0, main_~y~0=8.0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); [L126] ~x~0 := ~someUnaryFLOAToperation(0.0); [L127] ~y~0 := #t~nondet14; [L127] havoc #t~nondet14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L129] COND TRUE ~someBinaryFLOATComparisonOperation(~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(~y~0, 0.0) [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~union1; [L23] havoc #t~mem0; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L131] ~res~0 := #t~ret15; [L131] havoc #t~ret15; [L134] #t~short17 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND FALSE !(#t~short17) VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND TRUE !#t~short17 [L134] havoc #t~short17; [L134] havoc #t~ret16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); [L126] ~x~0 := ~someUnaryFLOAToperation(0.0); [L127] ~y~0 := #t~nondet14; [L127] havoc #t~nondet14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L129] COND TRUE ~someBinaryFLOATComparisonOperation(~y~0, 0.0) || ~someBinaryFLOATComparisonOperation(~y~0, 0.0) [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~union1; [L23] havoc #t~mem0; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~union3; [L28] havoc #t~mem2; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L131] ~res~0 := #t~ret15; [L131] havoc #t~ret15; [L134] #t~short17 := ~someBinaryFLOATComparisonOperation(~res~0, ~someUnaryFLOAToperation(0.0)); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND FALSE !(#t~short17) VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L134] COND TRUE !#t~short17 [L134] havoc #t~short17; [L134] havoc #t~ret16; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L135] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=2, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; [L126] float x = -0.0f; [L127] float y = __VERIFIER_nondet_float(); [L129] COND TRUE (y < 0.0f || y > 0.0f) [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [one_fmod=1, Zero_fmod={2:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [one_fmod=1, Zero_fmod={2:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [one_fmod=1, Zero_fmod={2:0}] [L131] float res = fmod_float(x, y); [L134] EXPR res == -0.0f && __signbit_float(res) == 1 VAL [one_fmod=1, Zero_fmod={2:0}] [L134] COND TRUE !(res == -0.0f && __signbit_float(res) == 1) [L135] __VERIFIER_error() VAL [one_fmod=1, Zero_fmod={2:0}] ----- [2018-11-23 05:51:23,739 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 05:51:23 ImpRootNode [2018-11-23 05:51:23,739 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 05:51:23,739 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 05:51:23,739 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 05:51:23,740 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 05:51:23,740 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:23" (3/4) ... [2018-11-23 05:51:23,744 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 05:51:23,744 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 05:51:23,745 INFO L168 Benchmark]: Toolchain (without parser) took 1061.72 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.1 MB). Free memory was 961.9 MB in the beginning and 1.1 GB in the end (delta: -102.6 MB). Peak memory consumption was 40.6 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,746 INFO L168 Benchmark]: CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 982.9 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 05:51:23,747 INFO L168 Benchmark]: CACSL2BoogieTranslator took 202.77 ms. Allocated memory is still 1.0 GB. Free memory was 961.9 MB in the beginning and 945.8 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,747 INFO L168 Benchmark]: Boogie Procedure Inliner took 80.45 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.1 MB). Free memory was 945.8 MB in the beginning and 1.1 GB in the end (delta: -189.4 MB). Peak memory consumption was 14.3 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,749 INFO L168 Benchmark]: Boogie Preprocessor took 33.18 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 05:51:23,749 INFO L168 Benchmark]: RCFGBuilder took 421.30 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.8 MB). Peak memory consumption was 35.8 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,749 INFO L168 Benchmark]: CodeCheck took 316.02 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: 26.9 MB). Peak memory consumption was 26.9 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,750 INFO L168 Benchmark]: Witness Printer took 4.69 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: 8.1 MB). Peak memory consumption was 8.1 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:23,754 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 1 procedures, 48 locations, 1 error locations. UNSAFE Result, 0.2s OverallTime, 2 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 22 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 77 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, traceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 22 NumberOfCodeBlocks, 22 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 9 ConstructedInterpolants, 0 QuantifiedInterpolants, 81 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, 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: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - UnprovableResult [Line: 135]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 134, overapproximation of someUnaryDOUBLEoperation at line 14, overapproximation of bitwiseAnd at line 30, overapproximation of someUnaryFLOAToperation at line 126, overapproximation of bitwiseXor at line 31, overapproximation of someBinaryArithmeticFLOAToperation at line 35. Possible FailurePath: [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; [L126] float x = -0.0f; [L127] float y = __VERIFIER_nondet_float(); [L129] COND TRUE (y < 0.0f || y > 0.0f) [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [one_fmod=1, Zero_fmod={2:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [one_fmod=1, Zero_fmod={2:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [one_fmod=1, Zero_fmod={2:0}] [L131] float res = fmod_float(x, y); [L134] EXPR res == -0.0f && __signbit_float(res) == 1 VAL [one_fmod=1, Zero_fmod={2:0}] [L134] COND TRUE !(res == -0.0f && __signbit_float(res) == 1) [L135] __VERIFIER_error() VAL [one_fmod=1, Zero_fmod={2:0}] * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 982.9 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 202.77 ms. Allocated memory is still 1.0 GB. Free memory was 961.9 MB in the beginning and 945.8 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 80.45 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.1 MB). Free memory was 945.8 MB in the beginning and 1.1 GB in the end (delta: -189.4 MB). Peak memory consumption was 14.3 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 33.18 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 421.30 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 35.8 MB). Peak memory consumption was 35.8 MB. Max. memory is 11.5 GB. * CodeCheck took 316.02 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: 26.9 MB). Peak memory consumption was 26.9 MB. Max. memory is 11.5 GB. * Witness Printer took 4.69 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: 8.1 MB). Peak memory consumption was 8.1 MB. Max. memory is 11.5 GB. 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 05:51:25,249 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 05:51:25,251 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 05:51:25,261 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 05:51:25,262 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 05:51:25,262 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 05:51:25,263 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 05:51:25,265 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 05:51:25,266 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 05:51:25,267 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 05:51:25,268 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 05:51:25,268 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 05:51:25,269 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 05:51:25,270 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 05:51:25,271 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 05:51:25,271 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 05:51:25,272 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 05:51:25,273 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 05:51:25,275 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 05:51:25,276 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 05:51:25,277 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 05:51:25,278 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 05:51:25,280 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 05:51:25,280 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 05:51:25,280 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 05:51:25,281 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 05:51:25,282 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 05:51:25,283 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 05:51:25,283 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 05:51:25,284 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 05:51:25,284 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 05:51:25,285 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 05:51:25,285 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 05:51:25,285 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 05:51:25,286 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 05:51:25,287 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 05:51:25,287 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2018-11-23 05:51:25,298 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 05:51:25,299 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 05:51:25,299 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 05:51:25,300 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 05:51:25,300 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 05:51:25,300 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 05:51:25,300 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 05:51:25,301 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 05:51:25,302 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 05:51:25,302 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 05:51:25,303 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 05:51:25,303 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 05:51:25,303 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 05:51:25,303 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 05:51:25,303 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 05:51:25,303 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * Use separate solver for trace checks=false [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 05:51:25,304 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 05:51:25,305 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_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak 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 -> Kojak 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 -> bcbee6ed75bef52b13066d34c45df2688a1a6e18 [2018-11-23 05:51:25,337 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 05:51:25,347 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 05:51:25,349 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 05:51:25,350 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 05:51:25,351 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 05:51:25,351 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c [2018-11-23 05:51:25,391 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/71f75a2b8/6ce5e128bf334823a5796d546c6becd9/FLAG8b6e6f8a2 [2018-11-23 05:51:25,712 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 05:51:25,712 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/sv-benchmarks/c/float-newlib/float_req_bl_1130b_true-unreach-call.c [2018-11-23 05:51:25,717 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/71f75a2b8/6ce5e128bf334823a5796d546c6becd9/FLAG8b6e6f8a2 [2018-11-23 05:51:25,728 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/data/71f75a2b8/6ce5e128bf334823a5796d546c6becd9 [2018-11-23 05:51:25,730 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 05:51:25,731 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 05:51:25,732 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 05:51:25,732 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 05:51:25,735 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 05:51:25,735 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:25,737 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@706138e9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25, skipping insertion in model container [2018-11-23 05:51:25,737 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:25,744 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 05:51:25,764 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 05:51:25,922 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:51:25,927 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 05:51:25,959 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:51:25,977 INFO L195 MainTranslator]: Completed translation [2018-11-23 05:51:25,978 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25 WrapperNode [2018-11-23 05:51:25,978 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 05:51:25,978 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 05:51:25,978 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 05:51:25,979 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 05:51:25,984 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:25,994 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,063 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 05:51:26,064 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 05:51:26,064 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 05:51:26,064 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 05:51:26,071 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,071 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,075 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,075 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,085 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,091 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,093 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... [2018-11-23 05:51:26,096 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 05:51:26,096 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 05:51:26,097 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 05:51:26,097 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 05:51:26,097 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:51:25" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (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:10000 [2018-11-23 05:51:26,141 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE4 [2018-11-23 05:51:26,141 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4 [2018-11-23 05:51:26,141 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 05:51:26,141 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 05:51:26,141 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 05:51:26,141 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 05:51:26,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4 [2018-11-23 05:51:26,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 05:51:26,142 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 05:51:26,312 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 05:51:27,774 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 05:51:27,774 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-23 05:51:27,775 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:27 BoogieIcfgContainer [2018-11-23 05:51:27,775 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 05:51:27,775 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 05:51:27,775 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 05:51:27,783 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 05:51:27,783 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:27" (1/1) ... [2018-11-23 05:51:27,791 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:51:27,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:27,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 40 states and 66 transitions. [2018-11-23 05:51:27,815 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 66 transitions. [2018-11-23 05:51:27,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-23 05:51:27,817 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:27,853 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:27,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:27,874 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:27,881 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 05:51:27,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:27,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 40 states and 61 transitions. [2018-11-23 05:51:27,888 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 61 transitions. [2018-11-23 05:51:27,889 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-23 05:51:27,889 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:27,890 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:28,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:28,029 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:28,243 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 05:51:29,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:29,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 40 states and 60 transitions. [2018-11-23 05:51:29,267 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 60 transitions. [2018-11-23 05:51:29,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2018-11-23 05:51:29,268 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:29,269 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:29,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:29,287 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:29,382 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 05:51:31,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:31,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 42 states and 66 transitions. [2018-11-23 05:51:31,460 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 66 transitions. [2018-11-23 05:51:31,460 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 05:51:31,460 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:31,461 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:31,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:31,477 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:31,708 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 05:51:32,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:32,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 20 states and 22 transitions. [2018-11-23 05:51:32,259 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2018-11-23 05:51:32,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2018-11-23 05:51:32,259 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:32,260 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:32,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:32,274 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:32,275 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 05:51:32,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:32,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 20 transitions. [2018-11-23 05:51:32,279 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 20 transitions. [2018-11-23 05:51:32,279 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-23 05:51:32,279 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 05:51:32,280 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort BitVec undefined [2018-11-23 05:51:32,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:51:32,301 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:51:32,471 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 05:51:32,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 05:51:32,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 18 transitions. [2018-11-23 05:51:32,866 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 18 transitions. [2018-11-23 05:51:32,867 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 05:51:32,867 WARN L424 CodeCheckObserver]: This Program is SAFE, Check terminated with 7 iterations. [2018-11-23 05:51:32,877 INFO L775 CodeCheckObserver]: All specifications hold 1 specifications checked. All of them hold [2018-11-23 05:51:32,993 INFO L579 CodeCheckObserver]: Invariant with dag size 9 [2018-11-23 05:51:33,000 INFO L579 CodeCheckObserver]: Invariant with dag size 4 [2018-11-23 05:51:33,001 INFO L579 CodeCheckObserver]: Invariant with dag size 8 [2018-11-23 05:51:33,001 INFO L579 CodeCheckObserver]: Invariant with dag size 4 [2018-11-23 05:51:33,002 INFO L579 CodeCheckObserver]: Invariant with dag size 1 [2018-11-23 05:51:33,002 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 05:51:33 ImpRootNode [2018-11-23 05:51:33,002 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 05:51:33,002 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 05:51:33,003 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 05:51:33,003 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 05:51:33,003 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:51:27" (3/4) ... [2018-11-23 05:51:33,006 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 05:51:33,013 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 8 nodes and edges [2018-11-23 05:51:33,013 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2018-11-23 05:51:33,045 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_ee2f0577-5453-417a-9ea2-bcf9379b4bbd/bin-2019/ukojak/witness.graphml [2018-11-23 05:51:33,045 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 05:51:33,046 INFO L168 Benchmark]: Toolchain (without parser) took 7315.11 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 213.9 MB). Free memory was 949.7 MB in the beginning and 1.2 GB in the end (delta: -244.6 MB). There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 05:51:33,047 INFO L168 Benchmark]: CDTParser took 0.16 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 05:51:33,047 INFO L168 Benchmark]: CACSL2BoogieTranslator took 245.74 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:33,047 INFO L168 Benchmark]: Boogie Procedure Inliner took 85.20 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 154.7 MB). Free memory was 933.6 MB in the beginning and 1.1 GB in the end (delta: -208.7 MB). Peak memory consumption was 15.3 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:33,048 INFO L168 Benchmark]: Boogie Preprocessor took 32.44 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 05:51:33,048 INFO L168 Benchmark]: RCFGBuilder took 1678.51 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: 52.0 MB). Peak memory consumption was 52.0 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:33,049 INFO L168 Benchmark]: CodeCheck took 5227.02 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 59.2 MB). Free memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: -107.9 MB). Peak memory consumption was 274.1 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:33,049 INFO L168 Benchmark]: Witness Printer took 42.87 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: 4.0 MB). Peak memory consumption was 4.0 MB. Max. memory is 11.5 GB. [2018-11-23 05:51:33,052 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 1 procedures, 48 locations, 1 error locations. SAFE Result, 5.0s OverallTime, 7 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 940 SDtfs, 294 SDslu, 260 SDs, 0 SdLazy, 1388 SolverSat, 474 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 7.6s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 658 GetRequests, 609 SyntacticMatches, 1 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 729 ImplicationChecksByTransitivity, 2.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, traceCheckStatistics: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.7s InterpolantComputationTime, 80 NumberOfCodeBlocks, 80 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 74 ConstructedInterpolants, 4 QuantifiedInterpolants, 5201 SizeOfPredicates, 33 NumberOfNonLiveVariables, 282 ConjunctsInSsa, 43 ConjunctsInUnsatCore, 6 InterpolantComputations, 6 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, 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: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - PositiveResult [Line: 135]: 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: 20]: Loop Invariant Derived loop invariant: (~fp.lt~FLOAT(y, ~Pluszero~LONGDOUBLE()) || ~fp.gt~FLOAT(y, ~Pluszero~LONGDOUBLE())) && x == ~fp.neg~FLOAT(~Pluszero~LONGDOUBLE()) - InvariantResult [Line: 17]: Loop Invariant Derived loop invariant: ~fp.neg~FLOAT(~Pluszero~LONGDOUBLE()) == \result - InvariantResult [Line: 110]: Loop Invariant Derived loop invariant: ~fp~LONGDOUBLE(w[31:31], w[30:23], w[22:0]) == ~fp.neg~FLOAT(~Pluszero~LONGDOUBLE()) - InvariantResult [Line: 110]: Loop Invariant Derived loop invariant: x == ~fp.neg~FLOAT(~Pluszero~LONGDOUBLE()) - InvariantResult [Line: 119]: Loop Invariant Derived loop invariant: 1 * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 245.74 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 933.6 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 85.20 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 154.7 MB). Free memory was 933.6 MB in the beginning and 1.1 GB in the end (delta: -208.7 MB). Peak memory consumption was 15.3 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 32.44 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 1678.51 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: 52.0 MB). Peak memory consumption was 52.0 MB. Max. memory is 11.5 GB. * CodeCheck took 5227.02 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 59.2 MB). Free memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: -107.9 MB). Peak memory consumption was 274.1 MB. Max. memory is 11.5 GB. * Witness Printer took 42.87 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: 4.0 MB). Peak memory consumption was 4.0 MB. Max. memory is 11.5 GB. RESULT: Ultimate proved your program to be correct! Received shutdown request...