./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i --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_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i -s /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 9fdfa874c4a41b156e998d9e6fe5a8270aecd034 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i -s /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 9fdfa874c4a41b156e998d9e6fe5a8270aecd034 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 02:23:47,750 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 02:23:47,751 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 02:23:47,759 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 02:23:47,759 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 02:23:47,760 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 02:23:47,761 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 02:23:47,762 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 02:23:47,763 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 02:23:47,764 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 02:23:47,764 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 02:23:47,764 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 02:23:47,765 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 02:23:47,766 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 02:23:47,767 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 02:23:47,767 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 02:23:47,768 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 02:23:47,769 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 02:23:47,770 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 02:23:47,772 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 02:23:47,772 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 02:23:47,773 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 02:23:47,775 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 02:23:47,775 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 02:23:47,775 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 02:23:47,776 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 02:23:47,777 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 02:23:47,777 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 02:23:47,778 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 02:23:47,779 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 02:23:47,779 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 02:23:47,780 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 02:23:47,780 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 02:23:47,780 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 02:23:47,781 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 02:23:47,781 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 02:23:47,781 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf [2018-11-23 02:23:47,789 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 02:23:47,789 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 02:23:47,790 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 02:23:47,790 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 02:23:47,790 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 02:23:47,790 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-11-23 02:23:47,791 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 02:23:47,792 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 02:23:47,792 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 02:23:47,792 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 02:23:47,792 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 02:23:47,792 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 02:23:47,793 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 02:23:47,794 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 02:23:47,794 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 02:23:47,794 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 02:23:47,795 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2018-11-23 02:23:47,795 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 02:23:47,795 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 02:23:47,795 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 02:23:47,795 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Taipan Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 9fdfa874c4a41b156e998d9e6fe5a8270aecd034 [2018-11-23 02:23:47,819 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 02:23:47,828 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 02:23:47,831 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 02:23:47,832 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 02:23:47,833 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 02:23:47,833 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/../../sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:47,879 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/a35b4e20a/45434e31c2704f4dabf0cdc703b2a3ef/FLAGd5abf32ec [2018-11-23 02:23:48,259 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 02:23:48,260 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:48,269 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/a35b4e20a/45434e31c2704f4dabf0cdc703b2a3ef/FLAGd5abf32ec [2018-11-23 02:23:48,641 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/a35b4e20a/45434e31c2704f4dabf0cdc703b2a3ef [2018-11-23 02:23:48,644 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 02:23:48,645 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 02:23:48,645 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 02:23:48,645 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 02:23:48,648 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 02:23:48,649 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:48,651 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@63613310 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48, skipping insertion in model container [2018-11-23 02:23:48,651 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:48,658 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 02:23:48,687 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 02:23:48,881 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:23:48,888 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 02:23:48,915 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:23:48,991 INFO L195 MainTranslator]: Completed translation [2018-11-23 02:23:48,991 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48 WrapperNode [2018-11-23 02:23:48,992 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 02:23:48,992 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 02:23:48,992 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 02:23:48,992 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 02:23:48,997 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,008 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,014 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 02:23:49,014 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 02:23:49,014 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 02:23:49,014 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 02:23:49,020 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,020 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,022 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,022 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,029 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,033 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,034 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... [2018-11-23 02:23:49,036 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 02:23:49,037 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 02:23:49,037 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 02:23:49,037 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 02:23:49,038 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 02:23:49,072 INFO L130 BoogieDeclarations]: Found specification of procedure search_list [2018-11-23 02:23:49,072 INFO L138 BoogieDeclarations]: Found implementation of procedure search_list [2018-11-23 02:23:49,072 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 02:23:49,072 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 02:23:49,073 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 02:23:49,073 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 02:23:49,073 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2018-11-23 02:23:49,073 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2018-11-23 02:23:49,074 INFO L130 BoogieDeclarations]: Found specification of procedure insert_list [2018-11-23 02:23:49,074 INFO L138 BoogieDeclarations]: Found implementation of procedure insert_list [2018-11-23 02:23:49,074 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 02:23:49,074 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 02:23:49,074 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 02:23:49,270 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 02:23:49,271 INFO L280 CfgBuilder]: Removed 2 assue(true) statements. [2018-11-23 02:23:49,271 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:23:49 BoogieIcfgContainer [2018-11-23 02:23:49,271 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 02:23:49,272 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 02:23:49,272 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 02:23:49,274 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 02:23:49,274 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 02:23:48" (1/3) ... [2018-11-23 02:23:49,275 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2d95a219 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:23:49, skipping insertion in model container [2018-11-23 02:23:49,275 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:48" (2/3) ... [2018-11-23 02:23:49,275 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2d95a219 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:23:49, skipping insertion in model container [2018-11-23 02:23:49,276 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:23:49" (3/3) ... [2018-11-23 02:23:49,277 INFO L112 eAbstractionObserver]: Analyzing ICFG list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:49,285 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 02:23:49,291 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 02:23:49,306 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 02:23:49,327 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 02:23:49,327 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 02:23:49,327 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 02:23:49,327 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 02:23:49,327 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 02:23:49,327 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 02:23:49,327 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 02:23:49,327 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 02:23:49,339 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states. [2018-11-23 02:23:49,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2018-11-23 02:23:49,344 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:49,345 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:49,347 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:49,351 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:49,351 INFO L82 PathProgramCache]: Analyzing trace with hash -658334123, now seen corresponding path program 1 times [2018-11-23 02:23:49,353 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 02:23:49,389 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:49,390 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:49,390 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:49,390 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 02:23:49,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:49,561 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:49,563 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:49,564 INFO L192 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2018-11-23 02:23:49,564 INFO L200 CegarAbsIntRunner]: Running AI on error trace of length 46 with the following transitions: [2018-11-23 02:23:49,567 INFO L202 CegarAbsIntRunner]: [0], [1], [2], [5], [9], [10], [14], [16], [18], [20], [22], [24], [40], [43], [45], [51], [69], [71], [72], [73], [74], [75], [77], [78], [79], [80], [81], [82], [83], [84], [85], [86], [87] [2018-11-23 02:23:49,591 INFO L148 AbstractInterpreter]: Using domain PoormanAbstractDomain with backing domain CompoundDomain [CongruenceDomain, ExplicitValueDomain] [2018-11-23 02:23:49,591 INFO L101 FixpointEngine]: Starting fixpoint engine with domain PoormanAbstractDomain (maxUnwinding=3, maxParallelStates=2) [2018-11-23 02:23:49,727 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2018-11-23 02:23:49,728 INFO L272 AbstractInterpreter]: Visited 25 different actions 37 times. Never merged. Never widened. Performed 348 root evaluator evaluations with a maximum evaluation depth of 3. Performed 348 inverse root evaluator evaluations with a maximum inverse evaluation depth of 3. Never found a fixpoint. Largest state had 30 variables. [2018-11-23 02:23:49,732 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:49,733 INFO L398 sIntCurrentIteration]: Generating AbsInt predicates [2018-11-23 02:23:49,812 INFO L227 lantSequenceWeakener]: Weakened 35 states. On average, predicates are now at 86.51% of their original sizes. [2018-11-23 02:23:49,812 INFO L413 sIntCurrentIteration]: Unifying AI predicates [2018-11-23 02:23:49,923 INFO L415 sIntCurrentIteration]: We unified 44 AI predicates to 44 [2018-11-23 02:23:49,924 INFO L424 sIntCurrentIteration]: Finished generation of AbsInt predicates [2018-11-23 02:23:49,924 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 02:23:49,925 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [13] imperfect sequences [6] total 17 [2018-11-23 02:23:49,925 INFO L256 anRefinementStrategy]: Using the first perfect interpolant sequence [2018-11-23 02:23:49,928 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 02:23:49,930 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 02:23:49,931 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=132, Unknown=0, NotChecked=0, Total=156 [2018-11-23 02:23:49,932 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 13 states. [2018-11-23 02:23:50,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:50,619 INFO L93 Difference]: Finished difference Result 93 states and 113 transitions. [2018-11-23 02:23:50,619 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 02:23:50,620 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 45 [2018-11-23 02:23:50,620 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:50,625 INFO L225 Difference]: With dead ends: 93 [2018-11-23 02:23:50,626 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 02:23:50,628 INFO L631 BasicCegarLoop]: 2 DeclaredPredicates, 50 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=48, Invalid=294, Unknown=0, NotChecked=0, Total=342 [2018-11-23 02:23:50,640 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 02:23:50,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 48. [2018-11-23 02:23:50,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 02:23:50,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 52 transitions. [2018-11-23 02:23:50,657 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 52 transitions. Word has length 45 [2018-11-23 02:23:50,657 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:50,657 INFO L480 AbstractCegarLoop]: Abstraction has 48 states and 52 transitions. [2018-11-23 02:23:50,657 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 02:23:50,657 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2018-11-23 02:23:50,659 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:50,659 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:50,659 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:50,659 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:50,660 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:50,660 INFO L82 PathProgramCache]: Analyzing trace with hash 1948127278, now seen corresponding path program 1 times [2018-11-23 02:23:50,660 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 02:23:50,661 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:50,661 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:50,661 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:50,661 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 02:23:50,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:50,750 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:50,751 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:50,751 INFO L192 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2018-11-23 02:23:50,751 INFO L200 CegarAbsIntRunner]: Running AI on error trace of length 48 with the following transitions: [2018-11-23 02:23:50,751 INFO L202 CegarAbsIntRunner]: [0], [1], [2], [5], [9], [10], [14], [16], [18], [20], [22], [24], [40], [43], [45], [51], [56], [59], [65], [71], [72], [73], [74], [75], [77], [78], [79], [80], [81], [82], [83], [84], [85], [86], [87] [2018-11-23 02:23:50,753 INFO L148 AbstractInterpreter]: Using domain PoormanAbstractDomain with backing domain CompoundDomain [CongruenceDomain, ExplicitValueDomain] [2018-11-23 02:23:50,753 INFO L101 FixpointEngine]: Starting fixpoint engine with domain PoormanAbstractDomain (maxUnwinding=3, maxParallelStates=2) [2018-11-23 02:23:50,798 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2018-11-23 02:23:50,798 INFO L272 AbstractInterpreter]: Visited 35 different actions 47 times. Never merged. Never widened. Performed 427 root evaluator evaluations with a maximum evaluation depth of 4. Performed 427 inverse root evaluator evaluations with a maximum inverse evaluation depth of 4. Never found a fixpoint. Largest state had 30 variables. [2018-11-23 02:23:50,803 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:50,804 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2018-11-23 02:23:50,804 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:50,805 INFO L192 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:23:50,824 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:50,824 INFO L286 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2018-11-23 02:23:50,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:50,886 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:50,920 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 21 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-23 02:23:50,920 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:23:51,009 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:51,034 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2018-11-23 02:23:51,034 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 7 [2018-11-23 02:23:51,035 INFO L249 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2018-11-23 02:23:51,035 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 02:23:51,037 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 02:23:51,037 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2018-11-23 02:23:51,037 INFO L87 Difference]: Start difference. First operand 48 states and 52 transitions. Second operand 6 states. [2018-11-23 02:23:51,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:51,147 INFO L93 Difference]: Finished difference Result 80 states and 89 transitions. [2018-11-23 02:23:51,147 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 02:23:51,147 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 47 [2018-11-23 02:23:51,148 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:51,148 INFO L225 Difference]: With dead ends: 80 [2018-11-23 02:23:51,148 INFO L226 Difference]: Without dead ends: 48 [2018-11-23 02:23:51,149 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 91 SyntacticMatches, 5 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=124, Unknown=0, NotChecked=0, Total=182 [2018-11-23 02:23:51,149 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2018-11-23 02:23:51,152 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 48. [2018-11-23 02:23:51,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 02:23:51,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 49 transitions. [2018-11-23 02:23:51,153 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 49 transitions. Word has length 47 [2018-11-23 02:23:51,153 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:51,153 INFO L480 AbstractCegarLoop]: Abstraction has 48 states and 49 transitions. [2018-11-23 02:23:51,153 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 02:23:51,153 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2018-11-23 02:23:51,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:51,154 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:51,154 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:51,154 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:51,154 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:51,154 INFO L82 PathProgramCache]: Analyzing trace with hash 369290796, now seen corresponding path program 1 times [2018-11-23 02:23:51,154 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 02:23:51,155 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,155 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:51,155 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,155 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 02:23:51,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:51,304 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 02:23:51,304 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 02:23:51,304 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2018-11-23 02:23:51,304 INFO L256 anRefinementStrategy]: Using the first perfect interpolant sequence [2018-11-23 02:23:51,304 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 02:23:51,305 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 02:23:51,305 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2018-11-23 02:23:51,305 INFO L87 Difference]: Start difference. First operand 48 states and 49 transitions. Second operand 10 states. [2018-11-23 02:23:51,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:51,494 INFO L93 Difference]: Finished difference Result 64 states and 67 transitions. [2018-11-23 02:23:51,495 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 02:23:51,495 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 47 [2018-11-23 02:23:51,495 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:51,497 INFO L225 Difference]: With dead ends: 64 [2018-11-23 02:23:51,497 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 02:23:51,498 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2018-11-23 02:23:51,498 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 02:23:51,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2018-11-23 02:23:51,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 02:23:51,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 53 transitions. [2018-11-23 02:23:51,504 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 53 transitions. Word has length 47 [2018-11-23 02:23:51,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:51,504 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 53 transitions. [2018-11-23 02:23:51,504 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 02:23:51,504 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 53 transitions. [2018-11-23 02:23:51,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:51,505 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:51,505 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:51,505 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:51,505 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:51,505 INFO L82 PathProgramCache]: Analyzing trace with hash -23736214, now seen corresponding path program 1 times [2018-11-23 02:23:51,505 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 02:23:51,506 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,506 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:51,506 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,506 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 02:23:51,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:51,562 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 02:23:51,562 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 02:23:51,562 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 02:23:51,562 INFO L256 anRefinementStrategy]: Using the first perfect interpolant sequence [2018-11-23 02:23:51,563 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 02:23:51,563 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 02:23:51,563 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2018-11-23 02:23:51,563 INFO L87 Difference]: Start difference. First operand 51 states and 53 transitions. Second operand 7 states. [2018-11-23 02:23:51,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:51,655 INFO L93 Difference]: Finished difference Result 63 states and 66 transitions. [2018-11-23 02:23:51,655 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 02:23:51,656 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 47 [2018-11-23 02:23:51,656 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:51,656 INFO L225 Difference]: With dead ends: 63 [2018-11-23 02:23:51,656 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 02:23:51,657 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2018-11-23 02:23:51,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 02:23:51,660 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2018-11-23 02:23:51,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 02:23:51,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 52 transitions. [2018-11-23 02:23:51,661 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 52 transitions. Word has length 47 [2018-11-23 02:23:51,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:51,661 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 52 transitions. [2018-11-23 02:23:51,661 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 02:23:51,661 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 52 transitions. [2018-11-23 02:23:51,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 02:23:51,662 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:51,662 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:51,662 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:51,662 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:51,662 INFO L82 PathProgramCache]: Analyzing trace with hash -1979191460, now seen corresponding path program 1 times [2018-11-23 02:23:51,663 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 02:23:51,663 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,663 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:51,663 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 02:23:51,663 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 02:23:51,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:52,038 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 19 proven. 9 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-23 02:23:52,038 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:52,038 INFO L192 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2018-11-23 02:23:52,038 INFO L200 CegarAbsIntRunner]: Running AI on error trace of length 51 with the following transitions: [2018-11-23 02:23:52,039 INFO L202 CegarAbsIntRunner]: [0], [1], [2], [5], [7], [9], [10], [14], [16], [18], [20], [22], [24], [40], [43], [45], [51], [56], [59], [65], [67], [71], [72], [73], [74], [75], [77], [78], [79], [80], [81], [82], [83], [84], [85], [86], [87] [2018-11-23 02:23:52,040 INFO L148 AbstractInterpreter]: Using domain PoormanAbstractDomain with backing domain CompoundDomain [CongruenceDomain, ExplicitValueDomain] [2018-11-23 02:23:52,040 INFO L101 FixpointEngine]: Starting fixpoint engine with domain PoormanAbstractDomain (maxUnwinding=3, maxParallelStates=2) [2018-11-23 02:23:52,079 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2018-11-23 02:23:52,079 INFO L272 AbstractInterpreter]: Visited 37 different actions 55 times. Merged at 1 different actions 3 times. Never widened. Performed 528 root evaluator evaluations with a maximum evaluation depth of 4. Performed 528 inverse root evaluator evaluations with a maximum inverse evaluation depth of 4. Found 4 fixpoints after 2 different actions. Largest state had 30 variables. [2018-11-23 02:23:52,082 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:52,082 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2018-11-23 02:23:52,082 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:52,082 INFO L192 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:23:52,093 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:52,094 INFO L286 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2018-11-23 02:23:52,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:52,131 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:52,153 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:23:52,155 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,172 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,172 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:23:52,178 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:23:52,180 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:23:52,186 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:52,188 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:23:52,188 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,191 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,192 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,199 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,200 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:31, output treesize:16 [2018-11-23 02:23:52,241 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:23:52,243 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:23:52,243 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,248 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,259 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:23:52,261 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:23:52,262 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,264 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:52,273 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:52,273 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:57, output treesize:49 [2018-11-23 02:23:53,160 WARN L180 SmtUtils]: Spent 474.00 ms on a formula simplification that was a NOOP. DAG size: 31 [2018-11-23 02:23:53,735 WARN L180 SmtUtils]: Spent 545.00 ms on a formula simplification that was a NOOP. DAG size: 31 [2018-11-23 02:23:53,741 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:53,742 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:53,742 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 10 [2018-11-23 02:23:53,742 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,753 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 43 [2018-11-23 02:23:53,755 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:23:53,757 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:53,758 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:23:53,758 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,761 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,764 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,770 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,770 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:64, output treesize:36 [2018-11-23 02:23:53,958 WARN L307 Elim1Store]: Array PQE input equivalent to false [2018-11-23 02:23:53,958 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,959 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:53,960 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:56, output treesize:1 [2018-11-23 02:23:53,965 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 19 proven. 7 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:53,965 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:23:54,249 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:54,255 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:54,259 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:54,259 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:33, output treesize:25 [2018-11-23 02:23:54,391 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:54,395 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:54,601 WARN L521 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:23:54,602 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.UnsupportedOperationException: alternation not yet supported at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.applyNonSddEliminations(ElimStorePlain.java:347) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.doElimAllRec(ElimStorePlain.java:264) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.elimAllRec(ElimStorePlain.java:199) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.elim(PartialQuantifierElimination.java:293) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.tryToEliminate(PartialQuantifierElimination.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:245) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:439) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.computeBackwardSequence(IterativePredicateTransformer.java:418) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.computeWeakestPreconditionSequence(IterativePredicateTransformer.java:290) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:330) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructForwardBackward(TraceCheckConstructor.java:224) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructTraceCheck(TraceCheckConstructor.java:188) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.get(TraceCheckConstructor.java:165) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.getTraceCheck(BaseTaipanRefinementStrategy.java:214) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.checkFeasibility(BaseRefinementStrategy.java:223) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:197) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:70) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:456) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:434) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:376) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2018-11-23 02:23:54,605 INFO L168 Benchmark]: Toolchain (without parser) took 5960.47 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 200.3 MB). Free memory was 956.6 MB in the beginning and 1.0 GB in the end (delta: -61.5 MB). Peak memory consumption was 138.8 MB. Max. memory is 11.5 GB. [2018-11-23 02:23:54,605 INFO L168 Benchmark]: CDTParser took 0.17 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 02:23:54,605 INFO L168 Benchmark]: CACSL2BoogieTranslator took 346.51 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.4 MB). Free memory was 956.6 MB in the beginning and 1.1 GB in the end (delta: -180.0 MB). Peak memory consumption was 38.3 MB. Max. memory is 11.5 GB. [2018-11-23 02:23:54,606 INFO L168 Benchmark]: Boogie Procedure Inliner took 21.66 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 02:23:54,606 INFO L168 Benchmark]: Boogie Preprocessor took 22.48 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 02:23:54,607 INFO L168 Benchmark]: RCFGBuilder took 234.47 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 20.3 MB). Peak memory consumption was 20.3 MB. Max. memory is 11.5 GB. [2018-11-23 02:23:54,607 INFO L168 Benchmark]: TraceAbstraction took 5332.35 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 51.9 MB). Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 92.8 MB). Peak memory consumption was 144.7 MB. Max. memory is 11.5 GB. [2018-11-23 02:23:54,609 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17 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 346.51 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.4 MB). Free memory was 956.6 MB in the beginning and 1.1 GB in the end (delta: -180.0 MB). Peak memory consumption was 38.3 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 21.66 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. * Boogie Preprocessor took 22.48 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 234.47 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 20.3 MB). Peak memory consumption was 20.3 MB. Max. memory is 11.5 GB. * TraceAbstraction took 5332.35 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 51.9 MB). Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 92.8 MB). Peak memory consumption was 144.7 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: UnsupportedOperationException: alternation not yet supported de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: UnsupportedOperationException: alternation not yet supported: de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.applyNonSddEliminations(ElimStorePlain.java:347) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request... ### Bit-precise run ### This is Ultimate 0.1.23-aa41828 [2018-11-23 02:23:56,086 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 02:23:56,087 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 02:23:56,095 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 02:23:56,095 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 02:23:56,096 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 02:23:56,096 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 02:23:56,098 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 02:23:56,099 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 02:23:56,099 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 02:23:56,100 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 02:23:56,100 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 02:23:56,101 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 02:23:56,102 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 02:23:56,103 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 02:23:56,103 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 02:23:56,104 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 02:23:56,105 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 02:23:56,107 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 02:23:56,108 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 02:23:56,109 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 02:23:56,110 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 02:23:56,112 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 02:23:56,112 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 02:23:56,112 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 02:23:56,113 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 02:23:56,114 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 02:23:56,114 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 02:23:56,115 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 02:23:56,115 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 02:23:56,115 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 02:23:56,116 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 02:23:56,116 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 02:23:56,116 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 02:23:56,117 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 02:23:56,118 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 02:23:56,118 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf [2018-11-23 02:23:56,129 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 02:23:56,129 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 02:23:56,130 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 02:23:56,130 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 02:23:56,130 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 02:23:56,130 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 02:23:56,130 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 02:23:56,131 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 02:23:56,131 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 02:23:56,131 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 02:23:56,131 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 02:23:56,131 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 02:23:56,131 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 02:23:56,132 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 02:23:56,133 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 02:23:56,133 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 02:23:56,133 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 02:23:56,134 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 02:23:56,134 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 02:23:56,134 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 02:23:56,134 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_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Taipan Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 9fdfa874c4a41b156e998d9e6fe5a8270aecd034 [2018-11-23 02:23:56,163 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 02:23:56,171 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 02:23:56,173 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 02:23:56,174 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 02:23:56,175 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 02:23:56,175 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/../../sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:56,212 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/e2459dd21/3ffdede3fe7847e599226ac46648f398/FLAGcd5fe034d [2018-11-23 02:23:56,657 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 02:23:56,657 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/sv-benchmarks/c/list-properties/list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:56,665 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/e2459dd21/3ffdede3fe7847e599226ac46648f398/FLAGcd5fe034d [2018-11-23 02:23:56,673 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/data/e2459dd21/3ffdede3fe7847e599226ac46648f398 [2018-11-23 02:23:56,676 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 02:23:56,677 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 02:23:56,678 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 02:23:56,678 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 02:23:56,681 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 02:23:56,682 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:23:56" (1/1) ... [2018-11-23 02:23:56,684 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@705312dd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:56, skipping insertion in model container [2018-11-23 02:23:56,685 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:23:56" (1/1) ... [2018-11-23 02:23:56,693 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 02:23:56,723 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 02:23:56,950 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:23:56,962 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 02:23:56,994 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:23:57,032 INFO L195 MainTranslator]: Completed translation [2018-11-23 02:23:57,032 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57 WrapperNode [2018-11-23 02:23:57,032 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 02:23:57,033 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 02:23:57,033 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 02:23:57,033 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 02:23:57,080 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,090 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,095 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 02:23:57,096 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 02:23:57,096 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 02:23:57,096 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 02:23:57,101 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,101 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,103 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,103 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,110 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,113 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,115 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... [2018-11-23 02:23:57,117 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 02:23:57,117 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 02:23:57,118 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 02:23:57,118 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 02:23:57,119 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 02:23:57,151 INFO L130 BoogieDeclarations]: Found specification of procedure search_list [2018-11-23 02:23:57,151 INFO L138 BoogieDeclarations]: Found implementation of procedure search_list [2018-11-23 02:23:57,152 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 02:23:57,152 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 02:23:57,152 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 02:23:57,152 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 02:23:57,152 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 02:23:57,152 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 02:23:57,152 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 02:23:57,152 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure insert_list [2018-11-23 02:23:57,153 INFO L138 BoogieDeclarations]: Found implementation of procedure insert_list [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 02:23:57,153 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 02:23:57,154 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 02:23:57,398 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 02:23:57,398 INFO L280 CfgBuilder]: Removed 2 assue(true) statements. [2018-11-23 02:23:57,399 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:23:57 BoogieIcfgContainer [2018-11-23 02:23:57,399 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 02:23:57,399 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 02:23:57,399 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 02:23:57,401 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 02:23:57,401 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 02:23:56" (1/3) ... [2018-11-23 02:23:57,402 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10c2455b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:23:57, skipping insertion in model container [2018-11-23 02:23:57,402 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:23:57" (2/3) ... [2018-11-23 02:23:57,402 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10c2455b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 02:23:57, skipping insertion in model container [2018-11-23 02:23:57,402 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:23:57" (3/3) ... [2018-11-23 02:23:57,403 INFO L112 eAbstractionObserver]: Analyzing ICFG list_search_false-unreach-call_false-valid-memcleanup.i [2018-11-23 02:23:57,409 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 02:23:57,414 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 02:23:57,423 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 02:23:57,445 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 02:23:57,445 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 02:23:57,445 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 02:23:57,445 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 02:23:57,446 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 02:23:57,446 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 02:23:57,446 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 02:23:57,446 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 02:23:57,446 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 02:23:57,457 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states. [2018-11-23 02:23:57,461 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2018-11-23 02:23:57,461 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:57,462 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:57,463 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:57,467 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:57,467 INFO L82 PathProgramCache]: Analyzing trace with hash -658334123, now seen corresponding path program 1 times [2018-11-23 02:23:57,470 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:23:57,471 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:23:57,484 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:57,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:57,582 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:57,602 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2018-11-23 02:23:57,602 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 02:23:57,605 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 02:23:57,606 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 02:23:57,608 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 02:23:57,616 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 02:23:57,616 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 02:23:57,618 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 2 states. [2018-11-23 02:23:57,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:57,633 INFO L93 Difference]: Finished difference Result 58 states and 70 transitions. [2018-11-23 02:23:57,633 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 02:23:57,634 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 45 [2018-11-23 02:23:57,635 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:57,640 INFO L225 Difference]: With dead ends: 58 [2018-11-23 02:23:57,640 INFO L226 Difference]: Without dead ends: 33 [2018-11-23 02:23:57,643 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 02:23:57,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2018-11-23 02:23:57,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2018-11-23 02:23:57,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 02:23:57,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 38 transitions. [2018-11-23 02:23:57,670 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 38 transitions. Word has length 45 [2018-11-23 02:23:57,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:57,672 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 38 transitions. [2018-11-23 02:23:57,672 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 02:23:57,672 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 38 transitions. [2018-11-23 02:23:57,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:57,674 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:57,674 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:57,674 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:57,675 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:57,675 INFO L82 PathProgramCache]: Analyzing trace with hash 1948127278, now seen corresponding path program 1 times [2018-11-23 02:23:57,675 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:23:57,675 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:23:57,696 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:57,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:57,764 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:57,856 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 21 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-23 02:23:57,857 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:23:57,956 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:57,962 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:23:57,963 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:23:57,974 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:58,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:58,030 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:58,038 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 21 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-23 02:23:58,039 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:23:58,159 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:23:58,186 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 4 imperfect interpolant sequences. [2018-11-23 02:23:58,186 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6, 6] total 7 [2018-11-23 02:23:58,187 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 02:23:58,187 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 02:23:58,187 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2018-11-23 02:23:58,188 INFO L87 Difference]: Start difference. First operand 33 states and 38 transitions. Second operand 7 states. [2018-11-23 02:23:58,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:58,452 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2018-11-23 02:23:58,452 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 02:23:58,452 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 47 [2018-11-23 02:23:58,453 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:58,453 INFO L225 Difference]: With dead ends: 73 [2018-11-23 02:23:58,454 INFO L226 Difference]: Without dead ends: 49 [2018-11-23 02:23:58,455 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 196 GetRequests, 184 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=124, Unknown=0, NotChecked=0, Total=182 [2018-11-23 02:23:58,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-23 02:23:58,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 38. [2018-11-23 02:23:58,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-23 02:23:58,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 43 transitions. [2018-11-23 02:23:58,461 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 43 transitions. Word has length 47 [2018-11-23 02:23:58,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:58,462 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 43 transitions. [2018-11-23 02:23:58,462 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 02:23:58,462 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2018-11-23 02:23:58,463 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:58,463 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:58,463 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:58,464 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:58,464 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:58,464 INFO L82 PathProgramCache]: Analyzing trace with hash 369290796, now seen corresponding path program 1 times [2018-11-23 02:23:58,464 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:23:58,465 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:23:58,487 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:58,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:58,598 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:58,633 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:23:58,636 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:23:58,641 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:58,643 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:23:58,644 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:58,648 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:58,650 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:58,655 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:58,656 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:26, output treesize:11 [2018-11-23 02:23:58,767 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 02:23:58,768 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 02:23:58,769 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 02:23:58,769 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 02:23:58,769 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 02:23:58,770 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 02:23:58,770 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2018-11-23 02:23:58,770 INFO L87 Difference]: Start difference. First operand 38 states and 43 transitions. Second operand 9 states. [2018-11-23 02:23:59,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:59,061 INFO L93 Difference]: Finished difference Result 54 states and 61 transitions. [2018-11-23 02:23:59,061 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 02:23:59,062 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 47 [2018-11-23 02:23:59,062 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:59,063 INFO L225 Difference]: With dead ends: 54 [2018-11-23 02:23:59,064 INFO L226 Difference]: Without dead ends: 45 [2018-11-23 02:23:59,064 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2018-11-23 02:23:59,064 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2018-11-23 02:23:59,068 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 41. [2018-11-23 02:23:59,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-23 02:23:59,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 47 transitions. [2018-11-23 02:23:59,069 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 47 transitions. Word has length 47 [2018-11-23 02:23:59,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:59,070 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 47 transitions. [2018-11-23 02:23:59,070 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 02:23:59,070 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 47 transitions. [2018-11-23 02:23:59,071 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 02:23:59,071 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:59,071 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:59,071 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:59,071 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:59,071 INFO L82 PathProgramCache]: Analyzing trace with hash -23736214, now seen corresponding path program 1 times [2018-11-23 02:23:59,072 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:23:59,072 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:23:59,084 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:59,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:59,134 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:59,160 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 02:23:59,160 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 02:23:59,161 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 02:23:59,161 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 02:23:59,162 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 02:23:59,162 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 02:23:59,162 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 02:23:59,162 INFO L87 Difference]: Start difference. First operand 41 states and 47 transitions. Second operand 6 states. [2018-11-23 02:23:59,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:23:59,288 INFO L93 Difference]: Finished difference Result 54 states and 61 transitions. [2018-11-23 02:23:59,288 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 02:23:59,289 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 47 [2018-11-23 02:23:59,289 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:23:59,290 INFO L225 Difference]: With dead ends: 54 [2018-11-23 02:23:59,290 INFO L226 Difference]: Without dead ends: 42 [2018-11-23 02:23:59,290 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-23 02:23:59,290 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-23 02:23:59,294 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-23 02:23:59,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-23 02:23:59,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 46 transitions. [2018-11-23 02:23:59,295 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 46 transitions. Word has length 47 [2018-11-23 02:23:59,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:23:59,295 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 46 transitions. [2018-11-23 02:23:59,295 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 02:23:59,295 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 46 transitions. [2018-11-23 02:23:59,296 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 02:23:59,296 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:23:59,296 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:23:59,296 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:23:59,296 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:23:59,296 INFO L82 PathProgramCache]: Analyzing trace with hash -1979191460, now seen corresponding path program 1 times [2018-11-23 02:23:59,297 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:23:59,297 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:23:59,308 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:23:59,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:23:59,417 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:23:59,427 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:23:59,427 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,433 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,434 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:23:59,450 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:23:59,454 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:23:59,458 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:23:59,461 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:23:59,462 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,466 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,468 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,474 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,474 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:33, output treesize:18 [2018-11-23 02:23:59,619 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:23:59,624 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:23:59,624 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,630 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,671 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:23:59,675 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:23:59,676 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,680 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:23:59,701 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:23:59,702 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:57, output treesize:49 [2018-11-23 02:24:01,761 WARN L180 SmtUtils]: Spent 2.02 s on a formula simplification that was a NOOP. DAG size: 32 [2018-11-23 02:24:03,828 WARN L180 SmtUtils]: Spent 2.02 s on a formula simplification that was a NOOP. DAG size: 32 [2018-11-23 02:24:03,845 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:03,847 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:03,857 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 10 [2018-11-23 02:24:03,857 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:03,893 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 45 [2018-11-23 02:24:03,897 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:03,901 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:03,903 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:03,904 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:03,908 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:03,915 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:03,926 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:03,927 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:68, output treesize:38 [2018-11-23 02:24:04,331 WARN L307 Elim1Store]: Array PQE input equivalent to false [2018-11-23 02:24:04,331 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:04,333 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 3 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:04,333 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:51, output treesize:1 [2018-11-23 02:24:04,343 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 19 proven. 7 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:04,343 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:24:04,977 WARN L180 SmtUtils]: Spent 227.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 02:24:05,089 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification that was a NOOP. DAG size: 43 [2018-11-23 02:24:05,277 WARN L180 SmtUtils]: Spent 187.00 ms on a formula simplification that was a NOOP. DAG size: 59 [2018-11-23 02:24:05,425 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 02:24:05,432 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:05,439 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:05,450 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:05,450 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:34, output treesize:28 [2018-11-23 02:24:07,537 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:24:07,537 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:24:07,543 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:24:07,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:24:07,583 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:24:07,595 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:24:07,595 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,623 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,623 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:24:07,632 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:24:07,634 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:07,639 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:07,642 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:07,642 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,647 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,649 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,656 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,656 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:33, output treesize:18 [2018-11-23 02:24:07,678 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:07,683 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:07,683 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,689 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,741 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:07,745 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:07,746 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,751 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,774 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:07,774 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:57, output treesize:49 [2018-11-23 02:24:07,798 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:07,800 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:07,801 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 10 [2018-11-23 02:24:07,801 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,836 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 49 [2018-11-23 02:24:07,840 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:07,845 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:07,848 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:07,848 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,857 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,865 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,878 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:07,878 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:70, output treesize:42 [2018-11-23 02:24:08,198 WARN L307 Elim1Store]: Array PQE input equivalent to false [2018-11-23 02:24:08,199 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:08,203 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:08,203 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:58, output treesize:1 [2018-11-23 02:24:08,209 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 19 proven. 7 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:08,209 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:24:08,619 WARN L180 SmtUtils]: Spent 234.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 02:24:08,747 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification that was a NOOP. DAG size: 43 [2018-11-23 02:24:08,963 WARN L180 SmtUtils]: Spent 215.00 ms on a formula simplification that was a NOOP. DAG size: 59 [2018-11-23 02:24:09,121 WARN L180 SmtUtils]: Spent 157.00 ms on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 02:24:09,126 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:09,132 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:09,144 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:09,144 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:36, output treesize:28 [2018-11-23 02:24:11,248 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 02:24:11,248 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 19 [2018-11-23 02:24:11,249 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 02:24:11,249 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 02:24:11,249 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=508, Unknown=1, NotChecked=0, Total=600 [2018-11-23 02:24:11,249 INFO L87 Difference]: Start difference. First operand 41 states and 46 transitions. Second operand 19 states. [2018-11-23 02:24:13,645 WARN L180 SmtUtils]: Spent 2.04 s on a formula simplification that was a NOOP. DAG size: 41 [2018-11-23 02:24:18,254 WARN L180 SmtUtils]: Spent 4.16 s on a formula simplification that was a NOOP. DAG size: 66 [2018-11-23 02:24:21,236 WARN L180 SmtUtils]: Spent 2.06 s on a formula simplification that was a NOOP. DAG size: 52 [2018-11-23 02:24:22,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:24:22,258 INFO L93 Difference]: Finished difference Result 60 states and 67 transitions. [2018-11-23 02:24:22,259 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 02:24:22,259 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 50 [2018-11-23 02:24:22,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:24:22,260 INFO L225 Difference]: With dead ends: 60 [2018-11-23 02:24:22,260 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 02:24:22,261 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 146 GetRequests, 107 SyntacticMatches, 4 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 18.5s TimeCoverageRelationStatistics Valid=194, Invalid=1137, Unknown=1, NotChecked=0, Total=1332 [2018-11-23 02:24:22,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 02:24:22,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 44. [2018-11-23 02:24:22,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-23 02:24:22,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 50 transitions. [2018-11-23 02:24:22,269 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 50 transitions. Word has length 50 [2018-11-23 02:24:22,269 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:24:22,269 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 50 transitions. [2018-11-23 02:24:22,269 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 02:24:22,269 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 50 transitions. [2018-11-23 02:24:22,270 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 02:24:22,270 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:24:22,270 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:24:22,271 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:24:22,271 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:24:22,271 INFO L82 PathProgramCache]: Analyzing trace with hash 1922748826, now seen corresponding path program 1 times [2018-11-23 02:24:22,271 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:24:22,271 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 9 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:24:22,293 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:24:22,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:24:22,374 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:24:22,399 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:22,400 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:22,400 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,402 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,406 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,407 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 02:24:22,515 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:22,515 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:24:22,875 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:22,877 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:24:22,877 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:24:22,883 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 02:24:22,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:24:22,912 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:24:22,919 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:22,920 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:22,921 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,922 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,927 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:22,927 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 02:24:22,930 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:22,930 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:24:23,089 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 02:24:23,104 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 4 imperfect interpolant sequences. [2018-11-23 02:24:23,104 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12, 12] total 20 [2018-11-23 02:24:23,105 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 02:24:23,105 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 02:24:23,105 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=319, Unknown=0, NotChecked=0, Total=380 [2018-11-23 02:24:23,105 INFO L87 Difference]: Start difference. First operand 44 states and 50 transitions. Second operand 20 states. [2018-11-23 02:24:24,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:24:24,396 INFO L93 Difference]: Finished difference Result 62 states and 68 transitions. [2018-11-23 02:24:24,396 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 02:24:24,397 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 50 [2018-11-23 02:24:24,397 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:24:24,398 INFO L225 Difference]: With dead ends: 62 [2018-11-23 02:24:24,398 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 02:24:24,399 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 182 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 192 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=257, Invalid=1075, Unknown=0, NotChecked=0, Total=1332 [2018-11-23 02:24:24,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 02:24:24,405 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2018-11-23 02:24:24,405 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-23 02:24:24,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 48 transitions. [2018-11-23 02:24:24,407 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 48 transitions. Word has length 50 [2018-11-23 02:24:24,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:24:24,407 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 48 transitions. [2018-11-23 02:24:24,407 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 02:24:24,407 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2018-11-23 02:24:24,408 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2018-11-23 02:24:24,408 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:24:24,408 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:24:24,408 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:24:24,408 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:24:24,408 INFO L82 PathProgramCache]: Analyzing trace with hash -596828116, now seen corresponding path program 2 times [2018-11-23 02:24:24,409 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:24:24,409 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 11 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:24:24,423 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-23 02:24:24,562 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 02:24:24,562 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 02:24:24,593 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:24:24,597 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:24:24,597 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,603 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,603 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:24:24,617 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:24:24,619 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:24,622 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:24,624 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:24,625 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,629 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,631 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,636 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,637 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:33, output treesize:18 [2018-11-23 02:24:24,746 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:24,751 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:24,751 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,758 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,809 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:24:24,813 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:24:24,813 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,819 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:24,846 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:24,846 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:63, output treesize:55 [2018-11-23 02:24:26,910 WARN L180 SmtUtils]: Spent 2.03 s on a formula simplification that was a NOOP. DAG size: 36 [2018-11-23 02:24:28,988 WARN L180 SmtUtils]: Spent 2.03 s on a formula simplification that was a NOOP. DAG size: 36 [2018-11-23 02:24:28,998 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:29,001 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:29,001 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 39 [2018-11-23 02:24:29,002 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,045 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 43 [2018-11-23 02:24:29,050 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:29,053 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:29,055 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:29,055 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,064 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,073 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,091 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,092 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:70, output treesize:53 [2018-11-23 02:24:29,420 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:29,572 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:30,073 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:30,113 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:30,364 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:30,388 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:30,561 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:30,579 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:30,675 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 4 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 02:24:30,675 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 5 variables, input treesize:117, output treesize:63 [2018-11-23 02:24:42,918 WARN L180 SmtUtils]: Spent 6.09 s on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 02:24:51,216 WARN L180 SmtUtils]: Spent 6.08 s on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 02:24:51,242 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,242 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:24:51,243 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 21 [2018-11-23 02:24:51,244 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,464 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 41 [2018-11-23 02:24:51,472 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:24:51,482 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,487 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:24:51,487 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,513 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,541 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,619 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,627 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 61 [2018-11-23 02:24:51,638 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2018-11-23 02:24:51,646 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,651 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 31 [2018-11-23 02:24:51,651 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,671 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,699 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,764 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,774 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 31 [2018-11-23 02:24:51,780 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 16 [2018-11-23 02:24:51,788 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:24:51,793 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 02:24:51,793 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,807 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,820 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,861 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, 3 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:51,861 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 8 variables, input treesize:108, output treesize:79 [2018-11-23 02:24:52,895 WARN L307 Elim1Store]: Array PQE input equivalent to false [2018-11-23 02:24:52,895 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:24:52,897 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 3 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:24:52,897 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:116, output treesize:1 [2018-11-23 02:24:52,914 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 17 proven. 21 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 02:24:52,914 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:24:53,027 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 41 [2018-11-23 02:24:56,256 WARN L180 SmtUtils]: Spent 2.26 s on a formula simplification that was a NOOP. DAG size: 72 [2018-11-23 02:24:57,559 WARN L180 SmtUtils]: Spent 1.30 s on a formula simplification that was a NOOP. DAG size: 67 [2018-11-23 02:24:59,882 WARN L180 SmtUtils]: Spent 2.32 s on a formula simplification that was a NOOP. DAG size: 91 [2018-11-23 02:25:01,770 WARN L180 SmtUtils]: Spent 1.89 s on a formula simplification that was a NOOP. DAG size: 79 [2018-11-23 02:25:02,908 WARN L180 SmtUtils]: Spent 1.13 s on a formula simplification. DAG size of input: 86 DAG size of output: 76 [2018-11-23 02:25:02,909 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:02,990 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:02,991 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:03,090 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:03,092 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:03,185 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:03,658 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:03,681 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:03,948 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:03,987 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:03,988 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,012 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,014 INFO L267 ElimStorePlain]: Start of recursive call 15: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,068 INFO L267 ElimStorePlain]: Start of recursive call 14: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,335 INFO L267 ElimStorePlain]: Start of recursive call 17: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,354 INFO L267 ElimStorePlain]: Start of recursive call 16: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,355 INFO L267 ElimStorePlain]: Start of recursive call 19: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,382 INFO L267 ElimStorePlain]: Start of recursive call 18: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,383 INFO L267 ElimStorePlain]: Start of recursive call 21: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,412 INFO L267 ElimStorePlain]: Start of recursive call 20: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:04,633 INFO L267 ElimStorePlain]: Start of recursive call 23: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,641 INFO L267 ElimStorePlain]: Start of recursive call 22: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,642 INFO L267 ElimStorePlain]: Start of recursive call 25: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,667 INFO L267 ElimStorePlain]: Start of recursive call 24: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,668 INFO L267 ElimStorePlain]: Start of recursive call 27: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,692 INFO L267 ElimStorePlain]: Start of recursive call 26: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:04,855 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 5 dim-2 vars, End of recursive call: 12 dim-0 vars, and 3 xjuncts. [2018-11-23 02:25:04,855 INFO L202 ElimStorePlain]: Needed 27 recursive calls to eliminate 7 variables, input treesize:128, output treesize:146 [2018-11-23 02:25:07,468 WARN L180 SmtUtils]: Spent 2.31 s on a formula simplification. DAG size of input: 88 DAG size of output: 47 [2018-11-23 02:25:07,471 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:25:07,471 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:25:07,479 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 02:25:07,589 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 02:25:07,589 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 02:25:07,593 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:25:07,596 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:25:07,596 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,602 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,602 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:25:07,608 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 19 [2018-11-23 02:25:07,611 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:25:07,615 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:07,618 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:25:07,618 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,623 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,626 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,632 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,633 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:33, output treesize:18 [2018-11-23 02:25:07,654 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:25:07,660 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:25:07,660 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,668 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,722 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:25:07,726 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:25:07,726 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,731 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,760 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:07,760 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:63, output treesize:55 [2018-11-23 02:25:07,771 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:07,774 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:07,774 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 41 [2018-11-23 02:25:07,775 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,836 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 49 [2018-11-23 02:25:07,840 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:25:07,849 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:07,852 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:25:07,852 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,858 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,868 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,890 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,890 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:78, output treesize:59 [2018-11-23 02:25:07,945 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:07,996 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:08,497 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:08,529 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:08,923 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:08,944 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:09,189 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:09,207 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:09,305 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 4 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:09,306 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 5 variables, input treesize:117, output treesize:63 [2018-11-23 02:25:15,498 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:15,498 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:25:15,499 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 21 [2018-11-23 02:25:15,499 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:15,723 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:15,724 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 44 treesize of output 59 [2018-11-23 02:25:15,737 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2018-11-23 02:25:15,756 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:15,763 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 31 [2018-11-23 02:25:15,764 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:15,799 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:15,856 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:15,993 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 39 [2018-11-23 02:25:16,000 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 22 [2018-11-23 02:25:16,007 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:16,012 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2018-11-23 02:25:16,012 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,029 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,054 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,121 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:16,134 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 31 [2018-11-23 02:25:16,141 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 16 [2018-11-23 02:25:16,148 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:25:16,152 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 02:25:16,152 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,164 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,177 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,212 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, 3 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,212 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 8 variables, input treesize:106, output treesize:77 [2018-11-23 02:25:16,912 WARN L307 Elim1Store]: Array PQE input equivalent to false [2018-11-23 02:25:16,913 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,915 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 3 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:16,915 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:116, output treesize:1 [2018-11-23 02:25:16,926 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 17 proven. 21 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 02:25:16,926 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:25:17,043 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 41 [2018-11-23 02:25:19,494 WARN L180 SmtUtils]: Spent 2.36 s on a formula simplification that was a NOOP. DAG size: 72 [2018-11-23 02:25:21,103 WARN L180 SmtUtils]: Spent 1.61 s on a formula simplification that was a NOOP. DAG size: 67 [2018-11-23 02:25:23,598 WARN L180 SmtUtils]: Spent 2.49 s on a formula simplification that was a NOOP. DAG size: 91 [2018-11-23 02:25:25,756 WARN L180 SmtUtils]: Spent 2.16 s on a formula simplification that was a NOOP. DAG size: 79 [2018-11-23 02:25:27,071 WARN L180 SmtUtils]: Spent 1.31 s on a formula simplification. DAG size of input: 87 DAG size of output: 76 [2018-11-23 02:25:27,072 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,103 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,389 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,444 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,445 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:27,508 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:27,509 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:27,579 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:27,922 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,947 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:27,947 INFO L267 ElimStorePlain]: Start of recursive call 13: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,011 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,012 INFO L267 ElimStorePlain]: Start of recursive call 15: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,056 INFO L267 ElimStorePlain]: Start of recursive call 14: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,400 INFO L267 ElimStorePlain]: Start of recursive call 17: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,449 INFO L267 ElimStorePlain]: Start of recursive call 16: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,450 INFO L267 ElimStorePlain]: Start of recursive call 19: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,463 INFO L267 ElimStorePlain]: Start of recursive call 18: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,464 INFO L267 ElimStorePlain]: Start of recursive call 21: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,514 INFO L267 ElimStorePlain]: Start of recursive call 20: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:25:28,769 INFO L267 ElimStorePlain]: Start of recursive call 23: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,795 INFO L267 ElimStorePlain]: Start of recursive call 22: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,796 INFO L267 ElimStorePlain]: Start of recursive call 25: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,823 INFO L267 ElimStorePlain]: Start of recursive call 24: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,824 INFO L267 ElimStorePlain]: Start of recursive call 27: End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,831 INFO L267 ElimStorePlain]: Start of recursive call 26: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:25:28,993 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 5 dim-2 vars, End of recursive call: 12 dim-0 vars, and 3 xjuncts. [2018-11-23 02:25:28,993 INFO L202 ElimStorePlain]: Needed 27 recursive calls to eliminate 7 variables, input treesize:128, output treesize:142 [2018-11-23 02:25:29,345 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 02:25:29,345 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 25 [2018-11-23 02:25:29,346 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-23 02:25:29,346 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-23 02:25:29,346 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=874, Unknown=7, NotChecked=0, Total=992 [2018-11-23 02:25:29,346 INFO L87 Difference]: Start difference. First operand 44 states and 48 transitions. Second operand 25 states. [2018-11-23 02:25:33,998 WARN L180 SmtUtils]: Spent 218.00 ms on a formula simplification. DAG size of input: 50 DAG size of output: 46 [2018-11-23 02:25:47,195 WARN L180 SmtUtils]: Spent 12.26 s on a formula simplification. DAG size of input: 59 DAG size of output: 50 [2018-11-23 02:26:01,543 WARN L180 SmtUtils]: Spent 12.45 s on a formula simplification. DAG size of input: 98 DAG size of output: 58 [2018-11-23 02:26:14,253 WARN L180 SmtUtils]: Spent 12.18 s on a formula simplification. DAG size of input: 52 DAG size of output: 46 [2018-11-23 02:26:22,868 WARN L180 SmtUtils]: Spent 284.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 55 [2018-11-23 02:26:36,817 WARN L180 SmtUtils]: Spent 12.35 s on a formula simplification. DAG size of input: 70 DAG size of output: 61 [2018-11-23 02:26:41,929 WARN L180 SmtUtils]: Spent 413.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 66 [2018-11-23 02:26:49,553 WARN L180 SmtUtils]: Spent 178.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 61 [2018-11-23 02:26:51,833 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 58 DAG size of output: 55 [2018-11-23 02:26:52,143 WARN L180 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 59 [2018-11-23 02:26:54,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:26:54,499 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2018-11-23 02:26:54,500 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-23 02:26:54,500 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 53 [2018-11-23 02:26:54,500 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:26:54,501 INFO L225 Difference]: With dead ends: 65 [2018-11-23 02:26:54,501 INFO L226 Difference]: Without dead ends: 56 [2018-11-23 02:26:54,501 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 163 GetRequests, 111 SyntacticMatches, 6 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 354 ImplicationChecksByTransitivity, 95.6s TimeCoverageRelationStatistics Valid=255, Invalid=1991, Unknown=10, NotChecked=0, Total=2256 [2018-11-23 02:26:54,502 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2018-11-23 02:26:54,507 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 47. [2018-11-23 02:26:54,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-23 02:26:54,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 52 transitions. [2018-11-23 02:26:54,507 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 52 transitions. Word has length 53 [2018-11-23 02:26:54,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:26:54,508 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 52 transitions. [2018-11-23 02:26:54,508 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-23 02:26:54,508 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 52 transitions. [2018-11-23 02:26:54,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2018-11-23 02:26:54,508 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:26:54,508 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:26:54,509 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:26:54,509 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:26:54,509 INFO L82 PathProgramCache]: Analyzing trace with hash -989855126, now seen corresponding path program 2 times [2018-11-23 02:26:54,509 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:26:54,509 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 13 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:26:54,524 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 02:26:54,638 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 02:26:54,638 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 02:26:54,660 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:26:54,691 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:26:54,691 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,696 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,696 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:26:54,709 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:26:54,711 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:26:54,711 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,713 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,719 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,719 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:24, output treesize:20 [2018-11-23 02:26:54,859 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:26:54,869 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:26:54,869 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,883 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:54,968 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:26:54,975 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:26:55,019 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:55,025 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:55,044 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:26:55,044 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 3 variables, input treesize:65, output treesize:34 [2018-11-23 02:26:57,109 WARN L180 SmtUtils]: Spent 2.02 s on a formula simplification that was a NOOP. DAG size: 26 [2018-11-23 02:26:59,161 WARN L180 SmtUtils]: Spent 2.02 s on a formula simplification that was a NOOP. DAG size: 26 [2018-11-23 02:26:59,167 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:26:59,169 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:26:59,169 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 4 [2018-11-23 02:26:59,169 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:59,202 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 34 [2018-11-23 02:26:59,206 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 16 [2018-11-23 02:26:59,211 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:26:59,219 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 02:26:59,220 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:26:59,237 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:59,249 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:59,272 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:26:59,272 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:57, output treesize:45 [2018-11-23 02:26:59,613 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 19 proven. 19 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 02:26:59,614 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:27:00,301 WARN L180 SmtUtils]: Spent 205.00 ms on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 02:27:00,516 WARN L180 SmtUtils]: Spent 214.00 ms on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 02:27:00,918 WARN L180 SmtUtils]: Spent 401.00 ms on a formula simplification that was a NOOP. DAG size: 61 [2018-11-23 02:27:01,238 WARN L180 SmtUtils]: Spent 318.00 ms on a formula simplification that was a NOOP. DAG size: 53 [2018-11-23 02:27:01,327 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,337 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,338 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:01,362 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:01,362 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:01,379 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:01,459 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,470 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,470 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,481 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,481 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,485 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:01,530 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 4 dim-0 vars, and 3 xjuncts. [2018-11-23 02:27:01,530 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 3 variables, input treesize:57, output treesize:72 [2018-11-23 02:27:09,579 WARN L180 SmtUtils]: Spent 3.85 s on a formula simplification that was a NOOP. DAG size: 47 [2018-11-23 02:27:09,581 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 02:27:09,581 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/z3 Starting monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 02:27:09,588 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 02:27:09,676 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 02:27:09,676 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 02:27:09,680 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:27:09,687 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 02:27:09,687 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,700 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,701 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2018-11-23 02:27:09,706 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:27:09,708 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:27:09,708 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,710 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,716 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,716 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:24, output treesize:20 [2018-11-23 02:27:09,747 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 02:27:09,755 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 02:27:09,755 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,769 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,857 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:09,866 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:09,904 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,909 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:09,927 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:09,927 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 3 variables, input treesize:65, output treesize:34 [2018-11-23 02:27:09,971 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:27:09,973 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:27:09,974 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 4 [2018-11-23 02:27:09,974 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:10,008 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 26 [2018-11-23 02:27:10,010 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 16 [2018-11-23 02:27:10,013 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:27:10,015 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 02:27:10,015 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:10,022 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:10,030 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:10,045 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:10,045 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:49, output treesize:37 [2018-11-23 02:27:10,084 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 19 proven. 19 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 02:27:10,084 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 02:27:10,438 WARN L180 SmtUtils]: Spent 222.00 ms on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 02:27:10,657 WARN L180 SmtUtils]: Spent 218.00 ms on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 02:27:11,094 WARN L180 SmtUtils]: Spent 436.00 ms on a formula simplification that was a NOOP. DAG size: 61 [2018-11-23 02:27:11,413 WARN L180 SmtUtils]: Spent 318.00 ms on a formula simplification that was a NOOP. DAG size: 53 [2018-11-23 02:27:11,532 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification that was a NOOP. DAG size: 40 [2018-11-23 02:27:11,533 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:11,557 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:11,558 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,567 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,568 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:11,597 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:27:11,668 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,676 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,677 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,681 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,681 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,690 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:27:11,747 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 4 dim-0 vars, and 3 xjuncts. [2018-11-23 02:27:11,748 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 3 variables, input treesize:57, output treesize:72 [2018-11-23 02:27:18,974 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 02:27:18,974 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 18 [2018-11-23 02:27:18,974 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 02:27:18,974 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 02:27:18,974 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=531, Unknown=1, NotChecked=0, Total=600 [2018-11-23 02:27:18,975 INFO L87 Difference]: Start difference. First operand 47 states and 52 transitions. Second operand 18 states. [2018-11-23 02:27:23,400 WARN L180 SmtUtils]: Spent 4.06 s on a formula simplification. DAG size of input: 38 DAG size of output: 35 [2018-11-23 02:27:31,929 WARN L180 SmtUtils]: Spent 8.21 s on a formula simplification. DAG size of input: 59 DAG size of output: 53 [2018-11-23 02:27:36,084 WARN L180 SmtUtils]: Spent 4.05 s on a formula simplification. DAG size of input: 36 DAG size of output: 33 [2018-11-23 02:27:40,634 WARN L180 SmtUtils]: Spent 4.05 s on a formula simplification. DAG size of input: 40 DAG size of output: 37 [2018-11-23 02:27:48,910 WARN L180 SmtUtils]: Spent 8.21 s on a formula simplification. DAG size of input: 61 DAG size of output: 57 [2018-11-23 02:27:53,538 WARN L180 SmtUtils]: Spent 4.08 s on a formula simplification. DAG size of input: 50 DAG size of output: 47 [2018-11-23 02:27:56,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 02:27:56,801 INFO L93 Difference]: Finished difference Result 64 states and 70 transitions. [2018-11-23 02:27:56,801 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2018-11-23 02:27:56,801 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 53 [2018-11-23 02:27:56,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 02:27:56,802 INFO L225 Difference]: With dead ends: 64 [2018-11-23 02:27:56,802 INFO L226 Difference]: Without dead ends: 52 [2018-11-23 02:27:56,803 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 121 SyntacticMatches, 3 SemanticMatches, 44 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 339 ImplicationChecksByTransitivity, 54.1s TimeCoverageRelationStatistics Valid=317, Invalid=1752, Unknown=1, NotChecked=0, Total=2070 [2018-11-23 02:27:56,803 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2018-11-23 02:27:56,808 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 47. [2018-11-23 02:27:56,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-23 02:27:56,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2018-11-23 02:27:56,808 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 53 [2018-11-23 02:27:56,809 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 02:27:56,809 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2018-11-23 02:27:56,809 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 02:27:56,809 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2018-11-23 02:27:56,809 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2018-11-23 02:27:56,810 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 02:27:56,810 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 02:27:56,810 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 02:27:56,810 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:27:56,810 INFO L82 PathProgramCache]: Analyzing trace with hash 1243118940, now seen corresponding path program 3 times [2018-11-23 02:27:56,810 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 02:27:56,811 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/cvc4nyu Starting monitored process 15 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 02:27:56,824 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2018-11-23 02:27:57,160 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 02:27:57,160 INFO L250 tOrderPrioritization]: Conjunction of SSA is sat [2018-11-23 02:27:57,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 02:27:57,459 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] RET #74#return; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret11 := main(); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] havoc ~i~0;havoc ~mylist~0.base, ~mylist~0.offset;havoc ~temp~0.base, ~temp~0.offset; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32;call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] RET #78#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret4|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret4; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] RET #80#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret5|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret5; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] RET #82#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret6|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret6; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] RET #84#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret7|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret7; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv3 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv1 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv5 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv2 32), |search_list_#t~short1|=false, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !#t~short1;havoc #t~mem0;havoc #t~short1; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #res.base, #res.offset := ~l.base, ~l.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#res.base|=(_ bv1624155402 32), |search_list_#res.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#res.base|=(_ bv1624155402 32), |search_list_#res.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] RET #86#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret8.base|=(_ bv1624155402 32), |main_#t~ret8.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset;havoc #t~ret8.base, #t~ret8.offset;call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), main_~temp~0.base=(_ bv1624155402 32), main_~temp~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~mem9|=(_ bv2 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~cond := #in~cond; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume 0bv32 == ~cond; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !false; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32; [?] #valid := #valid[0bv32 := 0bv1]; [L623] ~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] ensures true; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0.base, ~mylist~0.offset; [L645] havoc ~temp~0.base, ~temp~0.offset; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L634-L639] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; [L635] call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret4=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret5=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret6=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret7=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L624-L630] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L624-L630] ~k := #in~k; [L625] ~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626-L628] assume !#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L629] #res.base, #res.offset := ~l.base, ~l.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L624-L630] ensures true; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L650] RET call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret8.base=1624155402bv32, #t~ret8.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset; [L650] havoc #t~ret8.base, #t~ret8.offset; [L651] call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~mem9=2bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32, ~temp~0.base=1624155402bv32, ~temp~0.offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L4-L6] assume 0bv32 == ~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32; [?] #valid := #valid[0bv32 := 0bv1]; [L623] ~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] ensures true; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0.base, ~mylist~0.offset; [L645] havoc ~temp~0.base, ~temp~0.offset; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L634-L639] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; [L635] call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret4=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret5=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret6=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret7=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L624-L630] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L624-L630] ~k := #in~k; [L625] ~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626-L628] assume !#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L629] #res.base, #res.offset := ~l.base, ~l.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L624-L630] ensures true; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L650] RET call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret8.base=1624155402bv32, #t~ret8.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset; [L650] havoc #t~ret8.base, #t~ret8.offset; [L651] call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~mem9=2bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32, ~temp~0.base=1624155402bv32, ~temp~0.offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L4-L6] assume 0bv32 == ~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] ----- [2018-11-23 02:27:57,632 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,633 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,634 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,634 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,634 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,634 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,635 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,635 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,635 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,635 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,636 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,636 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,636 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,636 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,637 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,637 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,637 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,637 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,637 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,638 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,638 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,638 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,638 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,639 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,639 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,639 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,639 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,639 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,640 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,647 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,647 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,647 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,647 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,647 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,648 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,648 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,648 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,649 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,650 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,651 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,651 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,651 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,656 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,657 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,657 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,657 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,657 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,658 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,658 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,658 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,658 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,659 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,659 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,659 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,659 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,659 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:57,660 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L623] mlist *head; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L644] int i; [L645] mlist *mylist, *temp; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L646] CALL insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={0:0}, l={1624155402:0}, malloc(sizeof(mlist))={1624155402:0}] [L634] COND TRUE head==((void *)0) [L635] l->next = ((void *)0) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result=0, head={1624155402:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L646] RET insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, head={1624155402:0}, insert_list(mylist,2)=0, mylist={0:0}] [L647] CALL insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={-1741614988:0}, l={0:0}, malloc(sizeof(mlist))={-1741614988:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={0:0}, l={-1741614988:0}, malloc(sizeof(mlist))={-1741614988:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=5, \result=0, head={-1741614988:0}, k=5, l={-1741614988:0}, l={0:0}, malloc(sizeof(mlist))={-1741614988:0}] [L647] RET insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, head={-1741614988:0}, insert_list(mylist,5)=0, mylist={0:0}] [L648] CALL insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=1, \result=0, head={-1202515215:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L648] RET insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, head={-1202515215:0}, insert_list(mylist,1)=0, mylist={0:0}] [L649] CALL insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={0:0}, l={1289730400:0}, malloc(sizeof(mlist))={1289730400:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={0:0}, l={1289730400:0}, malloc(sizeof(mlist))={1289730400:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=3, \result=0, head={1289730400:0}, k=3, l={1289730400:0}, l={0:0}, malloc(sizeof(mlist))={1289730400:0}] [L649] RET insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, insert_list(mylist,3)=0, mylist={0:0}] [L650] CALL, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, l={1289730400:0}] [L625] l = head VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}] [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=3] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={-1202515215:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=1] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={-1741614988:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=5] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1624155402:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=0, l->key=2] [L626] COND FALSE !(l!=((void *)0) && l->key!=k) [L629] return l; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result={1624155402:0}, head={1289730400:0}, k=2, l={1624155402:0}, l={1289730400:0}] [L650] RET, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, search_list(head,2)={1624155402:0}] [L650] temp = search_list(head,2) [L651] EXPR temp->key VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, temp={1624155402:0}, temp->key=2] [L651] CALL __VERIFIER_assert(temp->key==1) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, head={1289730400:0}] [L4] COND TRUE !(cond) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] [L5] __VERIFIER_error() VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] ----- [2018-11-23 02:27:57,730 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 02:27:57 BoogieIcfgContainer [2018-11-23 02:27:57,730 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 02:27:57,730 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 02:27:57,730 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 02:27:57,730 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 02:27:57,731 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:23:57" (3/4) ... [2018-11-23 02:27:57,732 INFO L138 WitnessPrinter]: Generating witness for reachability counterexample ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(#NULL.base)|=(_ bv0 32), |old(#NULL.offset)|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] RET #74#return; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret11 := main(); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] havoc ~i~0;havoc ~mylist~0.base, ~mylist~0.offset;havoc ~temp~0.base, ~temp~0.offset; VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32;call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv0 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv2 32), insert_list_~l.base=(_ bv1624155402 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv2 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1624155402 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] RET #78#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret4|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret4; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1624155402 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv5 32), insert_list_~l.base=(_ bv2553352308 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv5 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv2553352308 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv1624155402 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] RET #80#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret5|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret5; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv2553352308 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv1 32), insert_list_~l.base=(_ bv3092452081 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv1 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv3092452081 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv2553352308 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] RET #82#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret6|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret6; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32);~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset;call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32);call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32);call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv3092452081 32), ~head~0.offset=(_ bv0 32)] [?] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [insert_list_~k=(_ bv3 32), insert_list_~l.base=(_ bv1289730400 32), insert_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |insert_list_#in~k|=(_ bv3 32), |insert_list_#in~l.base|=(_ bv0 32), |insert_list_#in~l.offset|=(_ bv0 32), |insert_list_#res|=(_ bv0 32), |insert_list_#t~malloc3.base|=(_ bv1289730400 32), |insert_list_#t~malloc3.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv3092452081 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] RET #84#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret7|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] havoc #t~ret7; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1289730400 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv3 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv3092452081 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv1 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv2553352308 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv5 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !!#t~short1;havoc #t~mem0;havoc #t~short1;call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32);~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~short1|=true, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume #t~short1;call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32);#t~short1 := #t~mem0 != ~k; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#t~mem0|=(_ bv2 32), |search_list_#t~short1|=false, ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !#t~short1;havoc #t~mem0;havoc #t~short1; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] #res.base, #res.offset := ~l.base, ~l.offset; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#res.base|=(_ bv1624155402 32), |search_list_#res.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume true; VAL [search_list_~k=(_ bv2 32), search_list_~l.base=(_ bv1624155402 32), search_list_~l.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), |search_list_#in~k|=(_ bv2 32), |search_list_#in~l.base|=(_ bv1289730400 32), |search_list_#in~l.offset|=(_ bv0 32), |search_list_#res.base|=(_ bv1624155402 32), |search_list_#res.offset|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] RET #86#return; VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~ret8.base|=(_ bv1624155402 32), |main_#t~ret8.offset|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset;havoc #t~ret8.base, #t~ret8.offset;call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [main_~mylist~0.base=(_ bv0 32), main_~mylist~0.offset=(_ bv0 32), main_~temp~0.base=(_ bv1624155402 32), main_~temp~0.offset=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |main_#t~mem9|=(_ bv2 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [|#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] ~cond := #in~cond; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume 0bv32 == ~cond; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] assume !false; VAL [__VERIFIER_assert_~cond=(_ bv0 32), |#NULL.base|=(_ bv0 32), |#NULL.offset|=(_ bv0 32), |__VERIFIER_assert_#in~cond|=(_ bv0 32), |old(~head~0.base)|=(_ bv0 32), |old(~head~0.offset)|=(_ bv0 32), ~head~0.base=(_ bv1289730400 32), ~head~0.offset=(_ bv0 32)] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32; [?] #valid := #valid[0bv32 := 0bv1]; [L623] ~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] ensures true; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0.base, ~mylist~0.offset; [L645] havoc ~temp~0.base, ~temp~0.offset; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L634-L639] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; [L635] call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret4=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret5=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret6=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret7=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L624-L630] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L624-L630] ~k := #in~k; [L625] ~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626-L628] assume !#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L629] #res.base, #res.offset := ~l.base, ~l.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L624-L630] ensures true; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L650] RET call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret8.base=1624155402bv32, #t~ret8.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset; [L650] havoc #t~ret8.base, #t~ret8.offset; [L651] call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~mem9=2bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32, ~temp~0.base=1624155402bv32, ~temp~0.offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L4-L6] assume 0bv32 == ~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] #NULL.base, #NULL.offset := 0bv32, 0bv32; [?] #valid := #valid[0bv32 := 0bv1]; [L623] ~head~0.base, ~head~0.offset := 0bv32, 0bv32; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] ensures true; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(#NULL.base)=0bv32, old(#NULL.offset)=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0.base, ~mylist~0.offset; [L645] havoc ~temp~0.base, ~temp~0.offset; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L634-L639] assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; [L635] call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=0bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=2bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1624155402bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0.base, ~mylist~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret4=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=1624155402bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=5bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=2553352308bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=1624155402bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=5bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0.base, ~mylist~0.offset, 5bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret5=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=2553352308bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=1bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=3092452081bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=2553352308bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=1bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0.base, ~mylist~0.offset, 1bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret6=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32] [L631-L642] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L631-L642] ~k := #in~k; [L632] call #t~malloc3.base, #t~malloc3.offset := #Ultimate.alloc(8bv32); [L632] ~l.base, ~l.offset := #t~malloc3.base, #t~malloc3.offset; [L633] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L634-L639] assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); [L637] call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); [L638] call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=3092452081bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L640] ~head~0.base, ~head~0.offset := ~l.base, ~l.offset; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L631-L642] ensures true; VAL [#in~k=3bv32, #in~l.base=0bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res=0bv32, #t~malloc3.base=1289730400bv32, #t~malloc3.offset=0bv32, old(~head~0.base)=3092452081bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=3bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0.base, ~mylist~0.offset, 3bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret7=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] CALL call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L624-L630] ~l.base, ~l.offset := #in~l.base, #in~l.offset; [L624-L630] ~k := #in~k; [L625] ~l.base, ~l.offset := ~head~0.base, ~head~0.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1289730400bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=3092452081bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=2553352308bv32, ~l.offset=0bv32] [L626-L628] assume !!#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] call #t~mem2.base, #t~mem2.offset := read~$Pointer$(~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); [L627] ~l.base, ~l.offset := #t~mem2.base, #t~mem2.offset; [L627] havoc #t~mem2.base, #t~mem2.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] #t~short1 := ~l.base != 0bv32 || ~l.offset != 0bv32; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~short1=true, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626] assume #t~short1; [L626] call #t~mem0 := read~intINTTYPE4(~l.base, ~l.offset, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L626-L628] assume !#t~short1; [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L629] #res.base, #res.offset := ~l.base, ~l.offset; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L624-L630] ensures true; VAL [#in~k=2bv32, #in~l.base=1289730400bv32, #in~l.offset=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, #res.base=1624155402bv32, #res.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~k=2bv32, ~l.base=1624155402bv32, ~l.offset=0bv32] [L650] RET call #t~ret8.base, #t~ret8.offset := search_list(~head~0.base, ~head~0.offset, 2bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~ret8.base=1624155402bv32, #t~ret8.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32] [L650] ~temp~0.base, ~temp~0.offset := #t~ret8.base, #t~ret8.offset; [L650] havoc #t~ret8.base, #t~ret8.offset; [L651] call #t~mem9 := read~intINTTYPE4(~temp~0.base, ~temp~0.offset, 4bv32); VAL [#NULL.base=0bv32, #NULL.offset=0bv32, #t~mem9=2bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32, ~mylist~0.base=0bv32, ~mylist~0.offset=0bv32, ~temp~0.base=1624155402bv32, ~temp~0.offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L4-L6] assume 0bv32 == ~cond; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL.base=0bv32, #NULL.offset=0bv32, old(~head~0.base)=0bv32, old(~head~0.offset)=0bv32, ~cond=0bv32, ~head~0.base=1289730400bv32, ~head~0.offset=0bv32] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] ----- [2018-11-23 02:27:58,135 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,135 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,135 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,135 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,136 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,141 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,141 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,142 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,143 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,144 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,145 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,145 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,145 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,145 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,160 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,160 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,160 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,161 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,162 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,163 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,164 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,164 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,175 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,176 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,176 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,176 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,176 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,176 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,177 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 [2018-11-23 02:27:58,178 WARN L1272 BoogieBacktranslator]: Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] #NULL := { base: 0bv32, offset: 0bv32 }; [?] #valid[0bv32] := 0bv1; [L623] ~head~0 := { base: 0bv32, offset: 0bv32 }; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(#NULL!base)=0bv32, old(#NULL!offset)=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [?] CALL call #t~ret11 := main(); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L644] havoc ~i~0; [L645] havoc ~mylist~0; [L645] havoc ~temp~0; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L646] CALL call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L634] COND TRUE ~head~0 == { base: 0bv32, offset: 0bv32 } [L635] FCALL call write~$Pointer$({ base: 0bv32, offset: 0bv32 }, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=0bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=2bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1624155402bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L646] RET call #t~ret4 := insert_list(~mylist~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret4=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L646] havoc #t~ret4; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] CALL call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=1624155402bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=5bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=2553352308bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=1624155402bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=5bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L647] RET call #t~ret5 := insert_list(~mylist~0, 5bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret5=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L647] havoc #t~ret5; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] CALL call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=2553352308bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=1bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=3092452081bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=2553352308bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=1bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L648] RET call #t~ret6 := insert_list(~mylist~0, 1bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret6=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L648] havoc #t~ret6; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] CALL call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32] [L631-L642] ~l := #in~l; [L631-L642] ~k := #in~k; [L632] FCALL call #t~malloc3 := #Ultimate.alloc(8bv32); [L632] ~l := #t~malloc3; [L633] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L634] COND FALSE !(~head~0 == { base: 0bv32, offset: 0bv32 }) [L637] FCALL call write~intINTTYPE4(~k, { base: ~l!base, offset: ~l!offset }, 4bv32); [L638] FCALL call write~$Pointer$(~head~0, { base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=3092452081bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L640] ~head~0 := ~l; [L641] #res := 0bv32; VAL [#in~k=3bv32, #in~l!base=0bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res=0bv32, #t~malloc3!base=1289730400bv32, #t~malloc3!offset=0bv32, old(~head~0!base)=3092452081bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=3bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L649] RET call #t~ret7 := insert_list(~mylist~0, 3bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret7=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L649] havoc #t~ret7; VAL [#NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] CALL call #t~ret8 := search_list(~head~0, 2bv32); VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L624-L630] ~l := #in~l; [L624-L630] ~k := #in~k; [L625] ~l := ~head~0; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=3bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1289730400bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=1bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=3092452081bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=5bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=2553352308bv32, ~l!offset=0bv32] [L626-L628] COND FALSE !(!#t~short1) [L626] havoc #t~mem0; [L626] havoc #t~short1; [L627] FCALL call #t~mem2 := read~$Pointer$({ base: ~l!base, offset: ~bvadd32(4bv32, ~l!offset) }, 4bv32); [L627] ~l := #t~mem2; [L627] havoc #t~mem2; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] #t~short1 := ~l != { base: 0bv32, offset: 0bv32 }; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~short1=true, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626] COND TRUE #t~short1 [L626] FCALL call #t~mem0 := read~intINTTYPE4({ base: ~l!base, offset: ~l!offset }, 4bv32); [L626] #t~short1 := #t~mem0 != ~k; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #t~mem0=2bv32, #t~short1=false, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L626-L628] COND TRUE !#t~short1 [L626] havoc #t~mem0; [L626] havoc #t~short1; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L629] #res := ~l; VAL [#in~k=2bv32, #in~l!base=1289730400bv32, #in~l!offset=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, #res!base=1624155402bv32, #res!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~k=2bv32, ~l!base=1624155402bv32, ~l!offset=0bv32] [L650] RET call #t~ret8 := search_list(~head~0, 2bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~ret8!base=1624155402bv32, #t~ret8!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32] [L650] ~temp~0 := #t~ret8; [L650] havoc #t~ret8; [L651] FCALL call #t~mem9 := read~intINTTYPE4({ base: ~temp~0!base, offset: ~temp~0!offset }, 4bv32); VAL [#NULL!base=0bv32, #NULL!offset=0bv32, #t~mem9=2bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32, ~mylist~0!base=0bv32, ~mylist~0!offset=0bv32, ~temp~0!base=1624155402bv32, ~temp~0!offset=0bv32] [L651] CALL call __VERIFIER_assert((if 1bv32 == #t~mem9 then 1bv32 else 0bv32)); VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L3-L8] ~cond := #in~cond; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L4] COND TRUE 0bv32 == ~cond VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L5] assert false; VAL [#in~cond=0bv32, #NULL!base=0bv32, #NULL!offset=0bv32, old(~head~0!base)=0bv32, old(~head~0!offset)=0bv32, ~cond=0bv32, ~head~0!base=1289730400bv32, ~head~0!offset=0bv32] [L623] mlist *head; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L644] int i; [L645] mlist *mylist, *temp; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L646] CALL insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L634] COND TRUE head==((void *)0) [L635] l->next = ((void *)0) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={0:0}, l={1624155402:0}, malloc(sizeof(mlist))={1624155402:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result=0, head={1624155402:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L646] RET insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, head={1624155402:0}, insert_list(mylist,2)=0, mylist={0:0}] [L647] CALL insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={0:0}, l={-1741614988:0}, malloc(sizeof(mlist))={-1741614988:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={0:0}, l={-1741614988:0}, malloc(sizeof(mlist))={-1741614988:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=5, \result=0, head={-1741614988:0}, k=5, l={-1741614988:0}, l={0:0}, malloc(sizeof(mlist))={-1741614988:0}] [L647] RET insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, head={-1741614988:0}, insert_list(mylist,5)=0, mylist={0:0}] [L648] CALL insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=1, \result=0, head={-1202515215:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L648] RET insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, head={-1202515215:0}, insert_list(mylist,1)=0, mylist={0:0}] [L649] CALL insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={0:0}, l={1289730400:0}, malloc(sizeof(mlist))={1289730400:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={1289730400:0}, l={0:0}, malloc(sizeof(mlist))={1289730400:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=3, \result=0, head={1289730400:0}, k=3, l={1289730400:0}, l={0:0}, malloc(sizeof(mlist))={1289730400:0}] [L649] RET insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, insert_list(mylist,3)=0, mylist={0:0}] [L650] CALL, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, l={1289730400:0}] [L625] l = head VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}] [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=3] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={-1202515215:0}, l!=((void *)0) && l->key!=k=1, l->key=1] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={-1741614988:0}, l!=((void *)0) && l->key!=k=1, l->key=5] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1624155402:0}, l!=((void *)0) && l->key!=k=0, l->key=2] [L626] COND FALSE !(l!=((void *)0) && l->key!=k) [L629] return l; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result={1624155402:0}, head={1289730400:0}, k=2, l={1624155402:0}, l={1289730400:0}] [L650] RET, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, search_list(head,2)={1624155402:0}] [L650] temp = search_list(head,2) [L651] EXPR temp->key VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, temp={1624155402:0}, temp->key=2] [L651] CALL __VERIFIER_assert(temp->key==1) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, head={1289730400:0}] [L4] COND TRUE !(cond) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] [L5] __VERIFIER_error() VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] ----- [2018-11-23 02:27:58,324 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_bc665ea6-baff-4d5d-b510-08b897f32c0a/bin-2019/utaipan/witness.graphml [2018-11-23 02:27:58,324 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 02:27:58,325 INFO L168 Benchmark]: Toolchain (without parser) took 241648.82 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 235.9 MB). Free memory was 945.4 MB in the beginning and 786.6 MB in the end (delta: 158.8 MB). Peak memory consumption was 394.7 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,325 INFO L168 Benchmark]: CDTParser took 0.14 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 02:27:58,325 INFO L168 Benchmark]: CACSL2BoogieTranslator took 355.13 ms. Allocated memory is still 1.0 GB. Free memory was 945.4 MB in the beginning and 918.6 MB in the end (delta: 26.8 MB). Peak memory consumption was 26.8 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,326 INFO L168 Benchmark]: Boogie Procedure Inliner took 62.40 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 116.9 MB). Free memory was 918.6 MB in the beginning and 1.1 GB in the end (delta: -185.2 MB). Peak memory consumption was 16.4 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,326 INFO L168 Benchmark]: Boogie Preprocessor took 21.47 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 02:27:58,326 INFO L168 Benchmark]: RCFGBuilder took 281.38 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 26.4 MB). Peak memory consumption was 26.4 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,326 INFO L168 Benchmark]: TraceAbstraction took 240330.72 ms. Allocated memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: 119.0 MB). Free memory was 1.1 GB in the beginning and 804.6 MB in the end (delta: 272.8 MB). Peak memory consumption was 391.8 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,327 INFO L168 Benchmark]: Witness Printer took 594.12 ms. Allocated memory is still 1.3 GB. Free memory was 804.6 MB in the beginning and 786.6 MB in the end (delta: 18.0 MB). Peak memory consumption was 18.0 MB. Max. memory is 11.5 GB. [2018-11-23 02:27:58,328 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 355.13 ms. Allocated memory is still 1.0 GB. Free memory was 945.4 MB in the beginning and 918.6 MB in the end (delta: 26.8 MB). Peak memory consumption was 26.8 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 62.40 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 116.9 MB). Free memory was 918.6 MB in the beginning and 1.1 GB in the end (delta: -185.2 MB). Peak memory consumption was 16.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 21.47 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 281.38 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 26.4 MB). Peak memory consumption was 26.4 MB. Max. memory is 11.5 GB. * TraceAbstraction took 240330.72 ms. Allocated memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: 119.0 MB). Free memory was 1.1 GB in the beginning and 804.6 MB in the end (delta: 272.8 MB). Peak memory consumption was 391.8 MB. Max. memory is 11.5 GB. * Witness Printer took 594.12 ms. Allocated memory is still 1.3 GB. Free memory was 804.6 MB in the beginning and 786.6 MB in the end (delta: 18.0 MB). Peak memory consumption was 18.0 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 1624155402bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 2553352308bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 3092452081bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: BitvecLiteral 0bv32 could not be translated for associated CType *~mlist~0 * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 5]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L623] mlist *head; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L644] int i; [L645] mlist *mylist, *temp; VAL [\old(head)=null, \old(head)=null, head={0:0}] [L646] CALL insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={0:0}, l={1624155402:0}, malloc(sizeof(mlist))={1624155402:0}] [L634] COND TRUE head==((void *)0) [L635] l->next = ((void *)0) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={0:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result=0, head={1624155402:0}, k=2, l={1624155402:0}, l={0:0}, malloc(sizeof(mlist))={1624155402:0}] [L646] RET insert_list(mylist,2) VAL [\old(head)=null, \old(head)=null, head={1624155402:0}, insert_list(mylist,2)=0, mylist={0:0}] [L647] CALL insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={-1741614988:0}, l={0:0}, malloc(sizeof(mlist))={-1741614988:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=5, head={1624155402:0}, k=5, l={0:0}, l={-1741614988:0}, malloc(sizeof(mlist))={-1741614988:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=5, \result=0, head={-1741614988:0}, k=5, l={-1741614988:0}, l={0:0}, malloc(sizeof(mlist))={-1741614988:0}] [L647] RET insert_list(mylist,5) VAL [\old(head)=null, \old(head)=null, head={-1741614988:0}, insert_list(mylist,5)=0, mylist={0:0}] [L648] CALL insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=1, head={-1741614988:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=1, \result=0, head={-1202515215:0}, k=1, l={-1202515215:0}, l={0:0}, malloc(sizeof(mlist))={-1202515215:0}] [L648] RET insert_list(mylist,1) VAL [\old(head)=null, \old(head)=null, head={-1202515215:0}, insert_list(mylist,1)=0, mylist={0:0}] [L649] CALL insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, l={0:0}] [L632] l = (mlist*)malloc(sizeof(mlist)) [L633] l->key = k VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={0:0}, l={1289730400:0}, malloc(sizeof(mlist))={1289730400:0}] [L634] COND FALSE !(head==((void *)0)) [L637] l->key = k [L638] l->next = head VAL [\old(head)=null, \old(head)=null, \old(k)=3, head={-1202515215:0}, k=3, l={0:0}, l={1289730400:0}, malloc(sizeof(mlist))={1289730400:0}] [L640] head = l [L641] return 0; VAL [\old(head)=null, \old(head)=null, \old(k)=3, \result=0, head={1289730400:0}, k=3, l={1289730400:0}, l={0:0}, malloc(sizeof(mlist))={1289730400:0}] [L649] RET insert_list(mylist,3) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, insert_list(mylist,3)=0, mylist={0:0}] [L650] CALL, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, l={1289730400:0}] [L625] l = head VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}] [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1289730400:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=3] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={-1202515215:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=1] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={-1741614988:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=1, l->key=5] [L626] COND TRUE l!=((void *)0) && l->key!=k [L627] EXPR l->next [L627] l = l->next [L626] l!=((void *)0) && l->key!=k [L626] EXPR l->key [L626] l!=((void *)0) && l->key!=k VAL [\old(head)=null, \old(head)=null, \old(k)=2, head={1289730400:0}, k=2, l={1624155402:0}, l={1289730400:0}, l!=((void *)0) && l->key!=k=0, l->key=2] [L626] COND FALSE !(l!=((void *)0) && l->key!=k) [L629] return l; VAL [\old(head)=null, \old(head)=null, \old(k)=2, \result={1624155402:0}, head={1289730400:0}, k=2, l={1624155402:0}, l={1289730400:0}] [L650] RET, EXPR search_list(head,2) VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, search_list(head,2)={1624155402:0}] [L650] temp = search_list(head,2) [L651] EXPR temp->key VAL [\old(head)=null, \old(head)=null, head={1289730400:0}, mylist={0:0}, temp={1624155402:0}, temp->key=2] [L651] CALL __VERIFIER_assert(temp->key==1) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, head={1289730400:0}] [L4] COND TRUE !(cond) VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] [L5] __VERIFIER_error() VAL [\old(cond)=0, \old(head)=null, \old(head)=null, cond=0, head={1289730400:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 41 locations, 1 error locations. UNSAFE Result, 240.2s OverallTime, 9 OverallIterations, 4 TraceHistogramMax, 136.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 233 SDtfs, 412 SDslu, 735 SDs, 0 SdLazy, 2248 SolverSat, 263 SolverUnsat, 9 SolverUnknown, 0 SolverNotchecked, 32.2s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 1032 GetRequests, 830 SyntacticMatches, 13 SemanticMatches, 189 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1130 ImplicationChecksByTransitivity, 169.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=47occurred in iteration=7, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 8 MinimizatonAttempts, 43 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.2s SsaConstructionTime, 1.1s SatisfiabilityAnalysisTime, 101.9s InterpolantComputationTime, 701 NumberOfCodeBlocks, 701 NumberOfCodeBlocksAsserted, 21 NumberOfCheckSat, 822 ConstructedInterpolants, 24 QuantifiedInterpolants, 508126 SizeOfPredicates, 171 NumberOfNonLiveVariables, 2947 ConjunctsInSsa, 360 ConjunctsInUnsatCore, 17 InterpolantComputations, 3 PerfectInterpolantSequences, 394/564 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! Received shutdown request...