./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/loops/bubble_sort-2.i --full-output --witness-type violation_witness --validate ./svcomp-yaml-violation-generation.2024-08-01_14-26-22.files/Default/bubble_sort-2.yml/witness.yml --preprocessor.replace.while.statements.and.if-then-else.statements false --icfgbuilder.size.of.a.code.block SequenceOfStatements --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 0a70ae82 Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/loops/bubble_sort-2.i ./svcomp-yaml-violation-generation.2024-08-01_14-26-22.files/Default/bubble_sort-2.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --preprocessor.replace.while.statements.and.if-then-else.statements false --icfgbuilder.size.of.a.code.block SequenceOfStatements --- Real Ultimate output --- This is Ultimate 0.2.4-wip.fs.yaml-violation-witnesses-0a70ae8-m [2024-08-07 14:08:25,102 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-07 14:08:25,175 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-08-07 14:08:25,179 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-07 14:08:25,179 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-07 14:08:25,206 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-07 14:08:25,209 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-07 14:08:25,209 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-07 14:08:25,210 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-08-07 14:08:25,210 INFO L153 SettingsManager]: * Use memory slicer=true [2024-08-07 14:08:25,210 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-07 14:08:25,211 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-07 14:08:25,211 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-07 14:08:25,213 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-07 14:08:25,213 INFO L153 SettingsManager]: * Use SBE=true [2024-08-07 14:08:25,213 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-07 14:08:25,213 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-07 14:08:25,214 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-07 14:08:25,214 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-07 14:08:25,214 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-07 14:08:25,214 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-07 14:08:25,218 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-07 14:08:25,218 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-07 14:08:25,218 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-07 14:08:25,219 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-07 14:08:25,219 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-07 14:08:25,219 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-07 14:08:25,219 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-07 14:08:25,219 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-07 14:08:25,219 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-08-07 14:08:25,220 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-07 14:08:25,220 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-07 14:08:25,221 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-07 14:08:25,221 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-08-07 14:08:25,221 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-07 14:08:25,221 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-08-07 14:08:25,222 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-07 14:08:25,222 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.boogie.preprocessor: Replace while statements and if-then-else statements -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder: Size of a code block -> SequenceOfStatements [2024-08-07 14:08:25,667 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-07 14:08:25,684 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-07 14:08:25,686 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-07 14:08:25,687 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-07 14:08:25,688 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-07 14:08:25,688 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./svcomp-yaml-violation-generation.2024-08-01_14-26-22.files/Default/bubble_sort-2.yml/witness.yml [2024-08-07 14:08:25,757 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-07 14:08:25,757 INFO L274 PluginConnector]: CDTParser initialized [2024-08-07 14:08:25,758 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops/bubble_sort-2.i [2024-08-07 14:08:27,220 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-07 14:08:27,427 INFO L384 CDTParser]: Found 1 translation units. [2024-08-07 14:08:27,427 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/bubble_sort-2.i [2024-08-07 14:08:27,439 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5869bc98a/a3b4aec0c0b8476ca782bf27b21b8fd0/FLAGa35cbe821 [2024-08-07 14:08:27,450 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5869bc98a/a3b4aec0c0b8476ca782bf27b21b8fd0 [2024-08-07 14:08:27,450 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-07 14:08:27,451 INFO L133 ToolchainWalker]: Walking toolchain with 4 elements. [2024-08-07 14:08:27,452 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-07 14:08:27,452 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-07 14:08:27,455 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-07 14:08:27,456 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser VIOLATION_WITNESS 07.08 02:08:25" (1/2) ... [2024-08-07 14:08:27,457 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7030ec42 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator VIOLATION_WITNESS 07.08 02:08:27, skipping insertion in model container [2024-08-07 14:08:27,457 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser VIOLATION_WITNESS 07.08 02:08:25" (1/2) ... [2024-08-07 14:08:27,458 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@5dec2b1 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator VIOLATION_WITNESS 07.08 02:08:27, skipping insertion in model container [2024-08-07 14:08:27,458 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.08 02:08:27" (2/2) ... [2024-08-07 14:08:27,458 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7030ec42 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27, skipping insertion in model container [2024-08-07 14:08:27,458 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.08 02:08:27" (2/2) ... [2024-08-07 14:08:27,501 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-08-07 14:08:27,648 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops/bubble_sort-2.i[1830,1843] [2024-08-07 14:08:27,758 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-07 14:08:27,772 INFO L200 MainTranslator]: Completed pre-run [2024-08-07 14:08:27,784 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops/bubble_sort-2.i[1830,1843] [2024-08-07 14:08:27,823 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-07 14:08:27,843 INFO L204 MainTranslator]: Completed translation [2024-08-07 14:08:27,843 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27 WrapperNode [2024-08-07 14:08:27,843 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-07 14:08:27,844 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-07 14:08:27,844 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-07 14:08:27,844 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-07 14:08:27,854 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,854 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,867 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,917 INFO L175 MemorySlicer]: Split 39 memory accesses to 5 slices as follows [2, 2, 18, 1, 16]. 46 percent of accesses are in the largest equivalence class. The 6 initializations are split as follows [2, 2, 2, 0, 0]. The 10 writes are split as follows [0, 0, 4, 1, 5]. [2024-08-07 14:08:27,918 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,918 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,944 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,949 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,951 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,961 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-07 14:08:27,964 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-08-07 14:08:27,964 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-08-07 14:08:27,964 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-08-07 14:08:27,964 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (1/1) ... [2024-08-07 14:08:27,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-08-07 14:08:27,979 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-08-07 14:08:27,999 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-08-07 14:08:28,011 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-08-07 14:08:28,044 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2024-08-07 14:08:28,044 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure fail [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure __list_add [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure __list_del [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure list_move [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure gl_insert [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure gl_read [2024-08-07 14:08:28,045 INFO L138 BoogieDeclarations]: Found implementation of procedure gl_destroy [2024-08-07 14:08:28,046 INFO L138 BoogieDeclarations]: Found implementation of procedure val_from_node [2024-08-07 14:08:28,046 INFO L138 BoogieDeclarations]: Found implementation of procedure gl_sort_pass [2024-08-07 14:08:28,046 INFO L138 BoogieDeclarations]: Found implementation of procedure gl_sort [2024-08-07 14:08:28,046 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2024-08-07 14:08:28,046 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure free [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure fail [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure inspect [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#0 [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#1 [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#2 [2024-08-07 14:08:28,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#3 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#4 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure __list_add [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#0 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#1 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#2 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#3 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#4 [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure __list_del [2024-08-07 14:08:28,048 INFO L130 BoogieDeclarations]: Found specification of procedure list_add [2024-08-07 14:08:28,049 INFO L130 BoogieDeclarations]: Found specification of procedure list_move [2024-08-07 14:08:28,049 INFO L130 BoogieDeclarations]: Found specification of procedure gl_insert [2024-08-07 14:08:28,060 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure gl_read [2024-08-07 14:08:28,061 INFO L130 BoogieDeclarations]: Found specification of procedure gl_destroy [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure val_from_node [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure gl_sort_pass [2024-08-07 14:08:28,062 INFO L130 BoogieDeclarations]: Found specification of procedure gl_sort [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure main [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#0 [2024-08-07 14:08:28,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#1 [2024-08-07 14:08:28,064 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#2 [2024-08-07 14:08:28,064 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#3 [2024-08-07 14:08:28,064 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#4 [2024-08-07 14:08:28,064 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-07 14:08:28,222 INFO L273 CfgBuilder]: Building ICFG [2024-08-07 14:08:28,224 INFO L304 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-07 14:08:28,336 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint failFINAL: assume true; [2024-08-07 14:08:28,570 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint inspectFINAL: assume true; [2024-08-07 14:08:28,615 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint gl_insertFINAL: assume true; [2024-08-07 14:08:28,648 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint L764: havoc #t~mem25; [2024-08-07 14:08:28,657 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint gl_sortFINAL: assume true; [2024-08-07 14:08:28,666 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint gl_readFINAL: assume true; [2024-08-07 14:08:28,685 INFO L1251 $ProcedureCfgBuilder]: dead code at ProgramPoint gl_destroyFINAL: assume true; [2024-08-07 14:08:28,791 INFO L? ?]: Removed 269 outVars from TransFormulas that were not future-live. [2024-08-07 14:08:28,791 INFO L327 CfgBuilder]: Performing block encoding [2024-08-07 14:08:28,803 INFO L349 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-08-07 14:08:28,804 INFO L354 CfgBuilder]: Removed 0 assume(true) statements. [2024-08-07 14:08:28,804 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 07.08 02:08:28 BoogieIcfgContainer [2024-08-07 14:08:28,804 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-08-07 14:08:28,806 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-08-07 14:08:28,806 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-08-07 14:08:28,808 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-08-07 14:08:28,808 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser VIOLATION_WITNESS 07.08 02:08:25" (1/4) ... [2024-08-07 14:08:28,809 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@488fdae5 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction VIOLATION_WITNESS 07.08 02:08:28, skipping insertion in model container [2024-08-07 14:08:28,809 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.08 02:08:27" (2/4) ... [2024-08-07 14:08:28,809 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@488fdae5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.08 02:08:28, skipping insertion in model container [2024-08-07 14:08:28,809 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.08 02:08:27" (3/4) ... [2024-08-07 14:08:28,809 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@488fdae5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.08 02:08:28, skipping insertion in model container [2024-08-07 14:08:28,809 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 07.08 02:08:28" (4/4) ... [2024-08-07 14:08:28,810 INFO L119 eAbstractionObserver]: Analyzing ICFG bubble_sort-2.i [2024-08-07 14:08:28,810 WARN L130 eAbstractionObserver]: Found a witness in the YAML format. I will only consider traces that are accepted by the witness [2024-08-07 14:08:28,828 INFO L221 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-08-07 14:08:28,828 INFO L180 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-08-07 14:08:28,876 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,876 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,877 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,877 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,878 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,878 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,879 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,879 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,880 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,880 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,881 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,881 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,882 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,883 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,884 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,884 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,885 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,885 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,886 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,886 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,887 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,887 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,888 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,888 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,889 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,889 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,890 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,890 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,891 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,891 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,902 INFO L90 WitnessUtils]: NestedWordAutomaton nwa = ( callAlphabet = {"call #t~ret29 := val_from_node(~pos1~0.base, ~pos1~0.offset);" "call #t~ret28 := val_from_node(~pos0~0.base, ~pos0~0.offset);" "call list_add(~list.base, ~list.offset, ~head.base, ~head.offset);" "call __list_del(~__cil_tmp5~2.base, ~__cil_tmp5~2.offset, ~__cil_tmp6~2.base, ~__cil_tmp6~2.offset);" "call #t~ret30 := gl_sort_pass();" "call gl_insert(~tmp~1);" "call #t~ret31 := main();" "call ULTIMATE.init();" "call gl_destroy();" "call inspect(~__cil_tmp2~1.base, ~__cil_tmp2~1.offset);" "call gl_sort();" "call inspect(~__cil_tmp1~0.base, ~__cil_tmp1~0.offset);" "call gl_read();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call fail();" "call __list_add(~new.base, ~new.offset, ~head.base, ~head.offset, ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset);" "call list_add(~__cil_tmp7~2.base, ~__cil_tmp7~2.offset, ~#gl_list~0.base, ~#gl_list~0.offset);" "call list_move(~pos0~0.base, ~pos0~0.offset, ~pos1~0.base, ~pos1~0.offset);" }, internalAlphabet = {"~new.base, ~new.offset := #in~new.base, #in~new.offset;~prev.base, ~prev.offset := #in~prev.base, #in~prev.offset;~next.base, ~next.offset := #in~next.base, #in~next.offset;havoc ~__cil_tmp4~1;havoc ~__cil_tmp5~1;havoc ~__cil_tmp6~1;havoc ~__cil_tmp7~1;~__cil_tmp4~1 := ~next.base + ~next.offset;~__cil_tmp5~1 := 4 + ~__cil_tmp4~1;call write~$Pointer$#4(~new.base, ~new.offset, 0, (if ~__cil_tmp5~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp5~1 % 4294967296 % 4294967296 else ~__cil_tmp5~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~next.base, ~next.offset, ~new.base, ~new.offset, 4);~__cil_tmp6~1 := ~new.base + ~new.offset;~__cil_tmp7~1 := 4 + ~__cil_tmp6~1;call write~$Pointer$#4(~prev.base, ~prev.offset, 0, (if ~__cil_tmp7~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp7~1 % 4294967296 % 4294967296 else ~__cil_tmp7~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~new.base, ~new.offset, ~prev.base, ~prev.offset, 4);" "assume true;" "#res := 0;" "SUMMARY for call gl_destroy(); srcloc: L845-1" "SUMMARY for call inspect(~__cil_tmp2~1.base, ~__cil_tmp2~1.offset); srcloc: L844" "~__cil_tmp2~1.base, ~__cil_tmp2~1.offset := ~#gl_list~0.base, ~#gl_list~0.offset;" "SUMMARY for call gl_sort(); srcloc: L842-1" "SUMMARY for call inspect(~__cil_tmp1~0.base, ~__cil_tmp1~0.offset); srcloc: L841" "~__cil_tmp1~0.base, ~__cil_tmp1~0.offset := ~#gl_list~0.base, ~#gl_list~0.offset;" "SUMMARY for call gl_read(); srcloc: L839-1" "havoc ~__cil_tmp1~0.base, ~__cil_tmp1~0.offset;havoc ~__cil_tmp2~1.base, ~__cil_tmp2~1.offset;" "assume true;" "~prev.base, ~prev.offset := #in~prev.base, #in~prev.offset;~next.base, ~next.offset := #in~next.base, #in~next.offset;havoc ~__cil_tmp3~1;havoc ~__cil_tmp4~2;~__cil_tmp3~1 := ~next.base + ~next.offset;~__cil_tmp4~2 := 4 + ~__cil_tmp3~1;call write~$Pointer$#4(~prev.base, ~prev.offset, 0, (if ~__cil_tmp4~2 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp4~2 % 4294967296 % 4294967296 else ~__cil_tmp4~2 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~next.base, ~next.offset, ~prev.base, ~prev.offset, 4);" "assume true;" "havoc #t~nondet1.base, #t~nondet1.offset;" "assume !false;assume false;" "assume false;" "assume false;" "assume false;" "assume !false;" "SUMMARY for call fail(); srcloc: L554" "assume 0 == ~__cil_tmp122~0;" "assume !(0 == ~__cil_tmp122~0);" "~__cil_tmp112~0 := ~node~0.base + ~node~0.offset;~__cil_tmp113~0.base, ~__cil_tmp113~0.offset := 0, 0;~__cil_tmp114~0 := ~__cil_tmp113~0.base + ~__cil_tmp113~0.offset;~__cil_tmp115~0 := 4 + ~__cil_tmp114~0;~__cil_tmp116~0.base, ~__cil_tmp116~0.offset := 0, (if ~__cil_tmp115~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp115~0 % 4294967296 % 4294967296 else ~__cil_tmp115~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp117~0 := ~__cil_tmp116~0.base + ~__cil_tmp116~0.offset;~__cil_tmp118~0.base, ~__cil_tmp118~0.offset := ~head.base, ~head.offset;~__cil_tmp119~0.base, ~__cil_tmp119~0.offset := ~__cil_tmp118~0.base, ~__cil_tmp118~0.offset - (if ~__cil_tmp117~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp117~0 % 4294967296 % 4294967296 else ~__cil_tmp117~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp120~0.base, ~__cil_tmp120~0.offset := ~__cil_tmp119~0.base, ~__cil_tmp119~0.offset;~__cil_tmp121~0 := ~__cil_tmp120~0.base + ~__cil_tmp120~0.offset;~__cil_tmp122~0 := (if ~__cil_tmp121~0 % 4294967296 == ~__cil_tmp112~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "call #t~mem16.base, #t~mem16.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp111~0.base, ~__cil_tmp111~0.offset := #t~mem16.base, #t~mem16.offset;havoc #t~mem16.base, #t~mem16.offset;~head.base, ~head.offset := ~__cil_tmp111~0.base, ~__cil_tmp111~0.offset;" "assume ~__cil_tmp110~0 % 4294967296 != ~__cil_tmp106~0 % 4294967296;" "assume !(~__cil_tmp110~0 % 4294967296 != ~__cil_tmp106~0 % 4294967296);" "~__cil_tmp106~0 := ~head.base + ~head.offset;~__cil_tmp107~0 := ~node~0.base + ~node~0.offset;~__cil_tmp108~0 := 4 + ~__cil_tmp107~0;~__cil_tmp109~0.base, ~__cil_tmp109~0.offset := 0, (if ~__cil_tmp108~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp108~0 % 4294967296 % 4294967296 else ~__cil_tmp108~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp110~0 := ~__cil_tmp109~0.base + ~__cil_tmp109~0.offset;" "assume true;" "assume !true;" "assume true;" "assume !true;" "call #t~mem15.base, #t~mem15.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp105~0.base, ~__cil_tmp105~0.offset := #t~mem15.base, #t~mem15.offset;havoc #t~mem15.base, #t~mem15.offset;~head.base, ~head.offset := ~__cil_tmp105~0.base, ~__cil_tmp105~0.offset;" "SUMMARY for call fail(); srcloc: L507" "assume 0 == ~__cil_tmp104~0;" "assume !(0 == ~__cil_tmp104~0);" "~__cil_tmp97~0 := 8;~__cil_tmp98~0 := ~node~0.base + ~node~0.offset;~__cil_tmp99~0 := ~__cil_tmp98~0 + ~__cil_tmp97~0;call #t~mem13.base, #t~mem13.offset := read~$Pointer$#4(0, (if ~__cil_tmp99~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp99~0 % 4294967296 % 4294967296 else ~__cil_tmp99~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp100~0.base, ~__cil_tmp100~0.offset := #t~mem13.base, #t~mem13.offset;havoc #t~mem13.base, #t~mem13.offset;call #t~mem14.base, #t~mem14.offset := read~$Pointer$#2(~__cil_tmp100~0.base, ~__cil_tmp100~0.offset, 4);~__cil_tmp101~0.base, ~__cil_tmp101~0.offset := #t~mem14.base, #t~mem14.offset;havoc #t~mem14.base, #t~mem14.offset;~__cil_tmp102~0 := ~__cil_tmp101~0.base + ~__cil_tmp101~0.offset;~__cil_tmp103~0 := ~head.base + ~head.offset;~__cil_tmp104~0 := (if ~__cil_tmp103~0 % 4294967296 == ~__cil_tmp102~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L484" "assume 0 == ~__cil_tmp96~0;" "assume !(0 == ~__cil_tmp96~0);" "~__cil_tmp88~0 := ~node~0.base + ~node~0.offset;~__cil_tmp89~0 := 4 + ~__cil_tmp88~0;call #t~mem11.base, #t~mem11.offset := read~$Pointer$#4(0, (if ~__cil_tmp89~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp89~0 % 4294967296 % 4294967296 else ~__cil_tmp89~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp90~0.base, ~__cil_tmp90~0.offset := #t~mem11.base, #t~mem11.offset;havoc #t~mem11.base, #t~mem11.offset;~__cil_tmp91~0 := ~__cil_tmp90~0.base + ~__cil_tmp90~0.offset;~__cil_tmp92~0 := 4 + ~__cil_tmp91~0;call #t~mem12.base, #t~mem12.offset := read~$Pointer$#4(0, (if ~__cil_tmp92~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp92~0 % 4294967296 % 4294967296 else ~__cil_tmp92~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp93~0.base, ~__cil_tmp93~0.offset := #t~mem12.base, #t~mem12.offset;havoc #t~mem12.base, #t~mem12.offset;~__cil_tmp94~0 := ~__cil_tmp93~0.base + ~__cil_tmp93~0.offset;~__cil_tmp95~0 := ~head.base + ~head.offset;~__cil_tmp96~0 := (if ~__cil_tmp95~0 % 4294967296 == ~__cil_tmp94~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L460" "assume 0 == ~__cil_tmp87~0;" "assume !(0 == ~__cil_tmp87~0);" "~__cil_tmp83~0.base, ~__cil_tmp83~0.offset := ~node~0.base, ~node~0.offset;~__cil_tmp84~0.base, ~__cil_tmp84~0.offset := ~__cil_tmp83~0.base, ~__cil_tmp83~0.offset;~__cil_tmp85~0 := ~__cil_tmp84~0.base + ~__cil_tmp84~0.offset;~__cil_tmp86~0 := ~node~0.base + ~node~0.offset;~__cil_tmp87~0 := (if ~__cil_tmp86~0 % 4294967296 == ~__cil_tmp85~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L440" "assume 0 == ~__cil_tmp82~0;" "assume !(0 == ~__cil_tmp82~0);" "~__cil_tmp76~0 := ~node~0.base + ~node~0.offset;~__cil_tmp77~0 := 4 + ~__cil_tmp76~0;~__cil_tmp78~0.base, ~__cil_tmp78~0.offset := 0, (if ~__cil_tmp77~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp77~0 % 4294967296 % 4294967296 else ~__cil_tmp77~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp79~0.base, ~__cil_tmp79~0.offset := ~__cil_tmp78~0.base, ~__cil_tmp78~0.offset;~__cil_tmp80~0 := ~__cil_tmp79~0.base + ~__cil_tmp79~0.offset;~__cil_tmp81~0 := ~node~0.base + ~node~0.offset;~__cil_tmp82~0 := (if ~__cil_tmp81~0 % 4294967296 != ~__cil_tmp80~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L418" "assume 0 == ~__cil_tmp75~0;" "assume !(0 == ~__cil_tmp75~0);" "~__cil_tmp72~0.base, ~__cil_tmp72~0.offset := ~head.base, ~head.offset;~__cil_tmp73~0 := ~__cil_tmp72~0.base + ~__cil_tmp72~0.offset;~__cil_tmp74~0 := ~node~0.base + ~node~0.offset;~__cil_tmp75~0 := (if ~__cil_tmp74~0 % 4294967296 != ~__cil_tmp73~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L399" "assume 0 == ~__cil_tmp71~0;" "assume !(0 == ~__cil_tmp71~0);" "~__cil_tmp62~0 := ~node~0.base + ~node~0.offset;~__cil_tmp63~0 := 4 + ~__cil_tmp62~0;~__cil_tmp64~0.base, ~__cil_tmp64~0.offset := 0, (if ~__cil_tmp63~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp63~0 % 4294967296 % 4294967296 else ~__cil_tmp63~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp65~0 := ~__cil_tmp64~0.base + ~__cil_tmp64~0.offset;~__cil_tmp66~0 := 16;~__cil_tmp67~0 := ~node~0.base + ~node~0.offset;~__cil_tmp68~0 := ~__cil_tmp67~0 + ~__cil_tmp66~0;call #t~mem10.base, #t~mem10.offset := read~$Pointer$#4(0, (if ~__cil_tmp68~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp68~0 % 4294967296 % 4294967296 else ~__cil_tmp68~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp69~0.base, ~__cil_tmp69~0.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;~__cil_tmp70~0 := ~__cil_tmp69~0.base + ~__cil_tmp69~0.offset;~__cil_tmp71~0 := (if ~__cil_tmp70~0 % 4294967296 != ~__cil_tmp65~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L374" "assume 0 == ~__cil_tmp61~0;" "assume !(0 == ~__cil_tmp61~0);" "~__cil_tmp53~0 := ~node~0.base + ~node~0.offset;~__cil_tmp54~0 := 4 + ~__cil_tmp53~0;~__cil_tmp55~0.base, ~__cil_tmp55~0.offset := 0, (if ~__cil_tmp54~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp54~0 % 4294967296 % 4294967296 else ~__cil_tmp54~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp56~0 := ~__cil_tmp55~0.base + ~__cil_tmp55~0.offset;~__cil_tmp57~0 := ~node~0.base + ~node~0.offset;~__cil_tmp58~0 := 12 + ~__cil_tmp57~0;call #t~mem9.base, #t~mem9.offset := read~$Pointer$#4(0, (if ~__cil_tmp58~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp58~0 % 4294967296 % 4294967296 else ~__cil_tmp58~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp59~0.base, ~__cil_tmp59~0.offset := #t~mem9.base, #t~mem9.offset;havoc #t~mem9.base, #t~mem9.offset;~__cil_tmp60~0 := ~__cil_tmp59~0.base + ~__cil_tmp59~0.offset;~__cil_tmp61~0 := (if ~__cil_tmp60~0 % 4294967296 != ~__cil_tmp56~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L350" "assume 0 == ~__cil_tmp52~0;" "assume !(0 == ~__cil_tmp52~0);" "~__cil_tmp43~0 := ~node~0.base + ~node~0.offset;~__cil_tmp44~0 := 12 + ~__cil_tmp43~0;~__cil_tmp45~0.base, ~__cil_tmp45~0.offset := 0, (if ~__cil_tmp44~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp44~0 % 4294967296 % 4294967296 else ~__cil_tmp44~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp46~0 := ~__cil_tmp45~0.base + ~__cil_tmp45~0.offset;~__cil_tmp47~0 := 16;~__cil_tmp48~0 := ~node~0.base + ~node~0.offset;~__cil_tmp49~0 := ~__cil_tmp48~0 + ~__cil_tmp47~0;call #t~mem8.base, #t~mem8.offset := read~$Pointer$#4(0, (if ~__cil_tmp49~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp49~0 % 4294967296 % 4294967296 else ~__cil_tmp49~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp50~0.base, ~__cil_tmp50~0.offset := #t~mem8.base, #t~mem8.offset;havoc #t~mem8.base, #t~mem8.offset;~__cil_tmp51~0 := ~__cil_tmp50~0.base + ~__cil_tmp50~0.offset;~__cil_tmp52~0 := (if ~__cil_tmp51~0 % 4294967296 == ~__cil_tmp46~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L325" "assume 0 == ~__cil_tmp42~0;" "assume !(0 == ~__cil_tmp42~0);" "~__cil_tmp34~0 := ~node~0.base + ~node~0.offset;~__cil_tmp35~0 := 12 + ~__cil_tmp34~0;~__cil_tmp36~0.base, ~__cil_tmp36~0.offset := 0, (if ~__cil_tmp35~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp35~0 % 4294967296 % 4294967296 else ~__cil_tmp35~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp37~0 := ~__cil_tmp36~0.base + ~__cil_tmp36~0.offset;~__cil_tmp38~0 := ~node~0.base + ~node~0.offset;~__cil_tmp39~0 := 12 + ~__cil_tmp38~0;call #t~mem7.base, #t~mem7.offset := read~$Pointer$#4(0, (if ~__cil_tmp39~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp39~0 % 4294967296 % 4294967296 else ~__cil_tmp39~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp40~0.base, ~__cil_tmp40~0.offset := #t~mem7.base, #t~mem7.offset;havoc #t~mem7.base, #t~mem7.offset;~__cil_tmp41~0 := ~__cil_tmp40~0.base + ~__cil_tmp40~0.offset;~__cil_tmp42~0 := (if ~__cil_tmp41~0 % 4294967296 == ~__cil_tmp37~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L302" "assume ~node~0.base == 0 && ~node~0.offset == 0;" "assume !(~node~0.base == 0 && ~node~0.offset == 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "~__cil_tmp26~0.base, ~__cil_tmp26~0.offset := 0, 0;~__cil_tmp27~0 := ~__cil_tmp26~0.base + ~__cil_tmp26~0.offset;~__cil_tmp28~0 := 4 + ~__cil_tmp27~0;~__cil_tmp29~0.base, ~__cil_tmp29~0.offset := 0, (if ~__cil_tmp28~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp28~0 % 4294967296 % 4294967296 else ~__cil_tmp28~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp30~0 := ~__cil_tmp29~0.base + ~__cil_tmp29~0.offset;~__cil_tmp31~0.base, ~__cil_tmp31~0.offset := ~head.base, ~head.offset;~__cil_tmp32~0.base, ~__cil_tmp32~0.offset := ~__cil_tmp31~0.base, ~__cil_tmp31~0.offset - (if ~__cil_tmp30~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp30~0 % 4294967296 % 4294967296 else ~__cil_tmp30~0 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp33~0.base, ~__cil_tmp33~0.offset := ~__cil_tmp32~0.base, ~__cil_tmp32~0.offset;~node~0.base, ~node~0.offset := ~__cil_tmp33~0.base, ~__cil_tmp33~0.offset;" "SUMMARY for call fail(); srcloc: L279" "assume 0 == ~__cil_tmp25~0;" "assume !(0 == ~__cil_tmp25~0);" "~__cil_tmp20~0 := ~head.base + ~head.offset;~__cil_tmp21~0 := ~head.base + ~head.offset;~__cil_tmp22~0 := 4 + ~__cil_tmp21~0;call #t~mem6.base, #t~mem6.offset := read~$Pointer$#4(0, (if ~__cil_tmp22~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp22~0 % 4294967296 % 4294967296 else ~__cil_tmp22~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp23~0.base, ~__cil_tmp23~0.offset := #t~mem6.base, #t~mem6.offset;havoc #t~mem6.base, #t~mem6.offset;~__cil_tmp24~0 := ~__cil_tmp23~0.base + ~__cil_tmp23~0.offset;~__cil_tmp25~0 := (if ~__cil_tmp24~0 % 4294967296 != ~__cil_tmp20~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L258" "assume 0 == ~__cil_tmp19~0;" "assume !(0 == ~__cil_tmp19~0);" "~__cil_tmp16~0 := ~head.base + ~head.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp17~0.base, ~__cil_tmp17~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;~__cil_tmp18~0 := ~__cil_tmp17~0.base + ~__cil_tmp17~0.offset;~__cil_tmp19~0 := (if ~__cil_tmp18~0 % 4294967296 != ~__cil_tmp16~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L240" "assume ~head.base == 0 && ~head.offset == 0;" "assume !(~head.base == 0 && ~head.offset == 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "~__cil_tmp13~0 := ~head.base + ~head.offset;~__cil_tmp14~0 := 4 + ~__cil_tmp13~0;call #t~mem4.base, #t~mem4.offset := read~$Pointer$#4(0, (if ~__cil_tmp14~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp14~0 % 4294967296 % 4294967296 else ~__cil_tmp14~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp15~0.base, ~__cil_tmp15~0.offset := #t~mem4.base, #t~mem4.offset;havoc #t~mem4.base, #t~mem4.offset;~head.base, ~head.offset := ~__cil_tmp15~0.base, ~__cil_tmp15~0.offset;" "SUMMARY for call fail(); srcloc: L222" "assume 0 == ~__cil_tmp12~0;" "assume !(0 == ~__cil_tmp12~0);" "~__cil_tmp7~0 := ~head.base + ~head.offset;~__cil_tmp8~0 := ~head.base + ~head.offset;~__cil_tmp9~0 := 4 + ~__cil_tmp8~0;call #t~mem3.base, #t~mem3.offset := read~$Pointer$#4(0, (if ~__cil_tmp9~0 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp9~0 % 4294967296 % 4294967296 else ~__cil_tmp9~0 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp10~0.base, ~__cil_tmp10~0.offset := #t~mem3.base, #t~mem3.offset;havoc #t~mem3.base, #t~mem3.offset;~__cil_tmp11~0 := ~__cil_tmp10~0.base + ~__cil_tmp10~0.offset;~__cil_tmp12~0 := (if ~__cil_tmp11~0 % 4294967296 != ~__cil_tmp7~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L201" "assume 0 == ~__cil_tmp6~0;" "assume !(0 == ~__cil_tmp6~0);" "~__cil_tmp3~0 := ~head.base + ~head.offset;call #t~mem2.base, #t~mem2.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp4~0.base, ~__cil_tmp4~0.offset := #t~mem2.base, #t~mem2.offset;havoc #t~mem2.base, #t~mem2.offset;~__cil_tmp5~0 := ~__cil_tmp4~0.base + ~__cil_tmp4~0.offset;~__cil_tmp6~0 := (if ~__cil_tmp5~0 % 4294967296 != ~__cil_tmp3~0 % 4294967296 then 1 else 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call fail(); srcloc: L183" "assume ~head.base == 0 && ~head.offset == 0;" "assume !(~head.base == 0 && ~head.offset == 0);" "assume true;" "assume !true;" "assume true;" "assume !true;" "~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~node~0.base, ~node~0.offset;havoc ~__cil_tmp3~0;havoc ~__cil_tmp4~0.base, ~__cil_tmp4~0.offset;havoc ~__cil_tmp5~0;havoc ~__cil_tmp6~0;havoc ~__cil_tmp7~0;havoc ~__cil_tmp8~0;havoc ~__cil_tmp9~0;havoc ~__cil_tmp10~0.base, ~__cil_tmp10~0.offset;havoc ~__cil_tmp11~0;havoc ~__cil_tmp12~0;havoc ~__cil_tmp13~0;havoc ~__cil_tmp14~0;havoc ~__cil_tmp15~0.base, ~__cil_tmp15~0.offset;havoc ~__cil_tmp16~0;havoc ~__cil_tmp17~0.base, ~__cil_tmp17~0.offset;havoc ~__cil_tmp18~0;havoc ~__cil_tmp19~0;havoc ~__cil_tmp20~0;havoc ~__cil_tmp21~0;havoc ~__cil_tmp22~0;havoc ~__cil_tmp23~0.base, ~__cil_tmp23~0.offset;havoc ~__cil_tmp24~0;havoc ~__cil_tmp25~0;havoc ~__cil_tmp26~0.base, ~__cil_tmp26~0.offset;havoc ~__cil_tmp27~0;havoc ~__cil_tmp28~0;havoc ~__cil_tmp29~0.base, ~__cil_tmp29~0.offset;havoc ~__cil_tmp30~0;havoc ~__cil_tmp31~0.base, ~__cil_tmp31~0.offset;havoc ~__cil_tmp32~0.base, ~__cil_tmp32~0.offset;havoc ~__cil_tmp33~0.base, ~__cil_tmp33~0.offset;havoc ~__cil_tmp34~0;havoc ~__cil_tmp35~0;havoc ~__cil_tmp36~0.base, ~__cil_tmp36~0.offset;havoc ~__cil_tmp37~0;havoc ~__cil_tmp38~0;havoc ~__cil_tmp39~0;havoc ~__cil_tmp40~0.base, ~__cil_tmp40~0.offset;havoc ~__cil_tmp41~0;havoc ~__cil_tmp42~0;havoc ~__cil_tmp43~0;havoc ~__cil_tmp44~0;havoc ~__cil_tmp45~0.base, ~__cil_tmp45~0.offset;havoc ~__cil_tmp46~0;havoc ~__cil_tmp47~0;havoc ~__cil_tmp48~0;havoc ~__cil_tmp49~0;havoc ~__cil_tmp50~0.base, ~__cil_tmp50~0.offset;havoc ~__cil_tmp51~0;havoc ~__cil_tmp52~0;havoc ~__cil_tmp53~0;havoc ~__cil_tmp54~0;havoc ~__cil_tmp55~0.base, ~__cil_tmp55~0.offset;havoc ~__cil_tmp56~0;havoc ~__cil_tmp57~0;havoc ~__cil_tmp58~0;havoc ~__cil_tmp59~0.base, ~__cil_tmp59~0.offset;havoc ~__cil_tmp60~0;havoc ~__cil_tmp61~0;havoc ~__cil_tmp62~0;havoc ~__cil_tmp63~0;havoc ~__cil_tmp64~0.base, ~__cil_tmp64~0.offset;havoc ~__cil_tmp65~0;havoc ~__cil_tmp66~0;havoc ~__cil_tmp67~0;havoc ~__cil_tmp68~0;havoc ~__cil_tmp69~0.base, ~__cil_tmp69~0.offset;havoc ~__cil_tmp70~0;havoc ~__cil_tmp71~0;havoc ~__cil_tmp72~0.base, ~__cil_tmp72~0.offset;havoc ~__cil_tmp73~0;havoc ~__cil_tmp74~0;havoc ~__cil_tmp75~0;havoc ~__cil_tmp76~0;havoc ~__cil_tmp77~0;havoc ~__cil_tmp78~0.base, ~__cil_tmp78~0.offset;havoc ~__cil_tmp79~0.base, ~__cil_tmp79~0.offset;havoc ~__cil_tmp80~0;havoc ~__cil_tmp81~0;havoc ~__cil_tmp82~0;havoc ~__cil_tmp83~0.base, ~__cil_tmp83~0.offset;havoc ~__cil_tmp84~0.base, ~__cil_tmp84~0.offset;havoc ~__cil_tmp85~0;havoc ~__cil_tmp86~0;havoc ~__cil_tmp87~0;havoc ~__cil_tmp88~0;havoc ~__cil_tmp89~0;havoc ~__cil_tmp90~0.base, ~__cil_tmp90~0.offset;havoc ~__cil_tmp91~0;havoc ~__cil_tmp92~0;havoc ~__cil_tmp93~0.base, ~__cil_tmp93~0.offset;havoc ~__cil_tmp94~0;havoc ~__cil_tmp95~0;havoc ~__cil_tmp96~0;havoc ~__cil_tmp97~0;havoc ~__cil_tmp98~0;havoc ~__cil_tmp99~0;havoc ~__cil_tmp100~0.base, ~__cil_tmp100~0.offset;havoc ~__cil_tmp101~0.base, ~__cil_tmp101~0.offset;havoc ~__cil_tmp102~0;havoc ~__cil_tmp103~0;havoc ~__cil_tmp104~0;havoc ~__cil_tmp105~0.base, ~__cil_tmp105~0.offset;havoc ~__cil_tmp106~0;havoc ~__cil_tmp107~0;havoc ~__cil_tmp108~0;havoc ~__cil_tmp109~0.base, ~__cil_tmp109~0.offset;havoc ~__cil_tmp110~0;havoc ~__cil_tmp111~0.base, ~__cil_tmp111~0.offset;havoc ~__cil_tmp112~0;havoc ~__cil_tmp113~0.base, ~__cil_tmp113~0.offset;havoc ~__cil_tmp114~0;havoc ~__cil_tmp115~0;havoc ~__cil_tmp116~0.base, ~__cil_tmp116~0.offset;havoc ~__cil_tmp117~0;havoc ~__cil_tmp118~0.base, ~__cil_tmp118~0.offset;havoc ~__cil_tmp119~0.base, ~__cil_tmp119~0.offset;havoc ~__cil_tmp120~0.base, ~__cil_tmp120~0.offset;havoc ~__cil_tmp121~0;havoc ~__cil_tmp122~0;" "SUMMARY for call __list_add(~new.base, ~new.offset, ~head.base, ~head.offset, ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset); srcloc: L599" "~new.base, ~new.offset := #in~new.base, #in~new.offset;~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset;call #t~mem17.base, #t~mem17.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp3~2.base, ~__cil_tmp3~2.offset := #t~mem17.base, #t~mem17.offset;havoc #t~mem17.base, #t~mem17.offset;" "assume true;" "~__cil_tmp8~1 := ~node~1.base + ~node~1.offset;~__cil_tmp9~1 := 12 + ~__cil_tmp8~1;~__cil_tmp10~1 := ~node~1.base + ~node~1.offset;~__cil_tmp11~1 := 12 + ~__cil_tmp10~1;call write~$Pointer$#4(0, (if ~__cil_tmp11~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp11~1 % 4294967296 % 4294967296 else ~__cil_tmp11~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp9~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp9~1 % 4294967296 % 4294967296 else ~__cil_tmp9~1 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp12~1 := ~node~1.base + ~node~1.offset;~__cil_tmp13~1 := 12 + ~__cil_tmp12~1;~__cil_tmp14~1 := ~node~1.base + ~node~1.offset;~__cil_tmp15~1 := 12 + ~__cil_tmp14~1;call write~$Pointer$#4(0, (if ~__cil_tmp15~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp15~1 % 4294967296 % 4294967296 else ~__cil_tmp15~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp13~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp13~1 % 4294967296 % 4294967296 else ~__cil_tmp13~1 % 4294967296 % 4294967296 - 4294967296), 4);" "assume true;" "assume !true;" "assume true;" "assume !true;" "SUMMARY for call list_add(~__cil_tmp7~2.base, ~__cil_tmp7~2.offset, ~#gl_list~0.base, ~#gl_list~0.offset); srcloc: L653" "call write~int#3(~value, ~node~1.base, ~node~1.offset, 4);~__cil_tmp5~3 := ~node~1.base + ~node~1.offset;~__cil_tmp6~3 := 4 + ~__cil_tmp5~3;~__cil_tmp7~2.base, ~__cil_tmp7~2.offset := 0, (if ~__cil_tmp6~3 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp6~3 % 4294967296 % 4294967296 else ~__cil_tmp6~3 % 4294967296 % 4294967296 - 4294967296);" "assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;" "assume !(~node~1.base == 0 && ~node~1.offset == 0);" "~value := #in~value;havoc ~node~1.base, ~node~1.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~__cil_tmp4~4;havoc ~__cil_tmp5~3;havoc ~__cil_tmp6~3;havoc ~__cil_tmp7~2.base, ~__cil_tmp7~2.offset;havoc ~__cil_tmp8~1;havoc ~__cil_tmp9~1;havoc ~__cil_tmp10~1;havoc ~__cil_tmp11~1;havoc ~__cil_tmp12~1;havoc ~__cil_tmp13~1;havoc ~__cil_tmp14~1;havoc ~__cil_tmp15~1;~__cil_tmp4~4 := 20;call #t~malloc20.base, #t~malloc20.offset := #Ultimate.allocOnHeap(~__cil_tmp4~4 % 4294967296);~tmp~0.base, ~tmp~0.offset := #t~malloc20.base, #t~malloc20.offset;havoc #t~malloc20.base, #t~malloc20.offset;~node~1.base, ~node~1.offset := ~tmp~0.base, ~tmp~0.offset;" "#res := ~any_change~0;" "SUMMARY for call list_move(~pos0~0.base, ~pos0~0.offset, ~pos1~0.base, ~pos1~0.offset); srcloc: L807" "~any_change~0 := 1;" "assume ~val0~0 <= ~val1~0;~pos0~0.base, ~pos0~0.offset := ~pos1~0.base, ~pos1~0.offset;" "assume !(~val0~0 <= ~val1~0);" "assume -2147483648 <= #t~ret29 && #t~ret29 <= 2147483647;~tmp___0~1 := #t~ret29;havoc #t~ret29;~val1~0 := ~tmp___0~1;" "SUMMARY for call #t~ret29 := val_from_node(~pos1~0.base, ~pos1~0.offset); srcloc: L797-1" "assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;~tmp~2 := #t~ret28;havoc #t~ret28;~val0~0 := ~tmp~2;" "SUMMARY for call #t~ret28 := val_from_node(~pos0~0.base, ~pos0~0.offset); srcloc: L795-1" "assume ~__cil_tmp10~3 % 4294967296 != ~__cil_tmp9~4 % 4294967296;" "assume !(~__cil_tmp10~3 % 4294967296 != ~__cil_tmp9~4 % 4294967296);" "call #t~mem27.base, #t~mem27.offset := read~$Pointer$#2(~pos0~0.base, ~pos0~0.offset, 4);~pos1~0.base, ~pos1~0.offset := #t~mem27.base, #t~mem27.offset;havoc #t~mem27.base, #t~mem27.offset;~__cil_tmp9~4 := ~pos1~0.base + ~pos1~0.offset;~__cil_tmp10~3 := ~#gl_list~0.base + ~#gl_list~0.offset;" "assume true;" "assume !true;" "assume true;" "assume !true;" "havoc ~any_change~0;havoc ~pos0~0.base, ~pos0~0.offset;havoc ~pos1~0.base, ~pos1~0.offset;havoc ~val0~0;havoc ~tmp~2;havoc ~val1~0;havoc ~tmp___0~1;havoc ~__cil_tmp8~4.base, ~__cil_tmp8~4.offset;havoc ~__cil_tmp9~4;havoc ~__cil_tmp10~3;~any_change~0 := 0;~__cil_tmp8~4.base, ~__cil_tmp8~4.offset := ~#gl_list~0.base, ~#gl_list~0.offset;call #t~mem26.base, #t~mem26.offset := read~$Pointer$#2(~__cil_tmp8~4.base, ~__cil_tmp8~4.offset, 4);~pos0~0.base, ~pos0~0.offset := #t~mem26.base, #t~mem26.offset;havoc #t~mem26.base, #t~mem26.offset;" "assume true;" "SUMMARY for call list_add(~list.base, ~list.offset, ~head.base, ~head.offset); srcloc: L616" "SUMMARY for call __list_del(~__cil_tmp5~2.base, ~__cil_tmp5~2.offset, ~__cil_tmp6~2.base, ~__cil_tmp6~2.offset); srcloc: L615" "~list.base, ~list.offset := #in~list.base, #in~list.offset;~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~__cil_tmp3~3;havoc ~__cil_tmp4~3;havoc ~__cil_tmp5~2.base, ~__cil_tmp5~2.offset;havoc ~__cil_tmp6~2.base, ~__cil_tmp6~2.offset;~__cil_tmp3~3 := ~list.base + ~list.offset;~__cil_tmp4~3 := 4 + ~__cil_tmp3~3;call #t~mem18.base, #t~mem18.offset := read~$Pointer$#4(0, (if ~__cil_tmp4~3 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp4~3 % 4294967296 % 4294967296 else ~__cil_tmp4~3 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp5~2.base, ~__cil_tmp5~2.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call #t~mem19.base, #t~mem19.offset := read~$Pointer$#2(~list.base, ~list.offset, 4);~__cil_tmp6~2.base, ~__cil_tmp6~2.offset := #t~mem19.base, #t~mem19.offset;havoc #t~mem19.base, #t~mem19.offset;" "assume true;" "~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~entry~0.base, ~entry~0.offset;havoc ~__cil_tmp3~5.base, ~__cil_tmp3~5.offset;havoc ~__cil_tmp4~6;havoc ~__cil_tmp5~5;havoc ~__cil_tmp6~5.base, ~__cil_tmp6~5.offset;havoc ~__cil_tmp7~4;havoc ~__cil_tmp8~3.base, ~__cil_tmp8~3.offset;havoc ~__cil_tmp9~3.base, ~__cil_tmp9~3.offset;~__cil_tmp3~5.base, ~__cil_tmp3~5.offset := 0, 0;~__cil_tmp4~6 := ~__cil_tmp3~5.base + ~__cil_tmp3~5.offset;~__cil_tmp5~5 := 4 + ~__cil_tmp4~6;~__cil_tmp6~5.base, ~__cil_tmp6~5.offset := 0, (if ~__cil_tmp5~5 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp5~5 % 4294967296 % 4294967296 else ~__cil_tmp5~5 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp7~4 := ~__cil_tmp6~5.base + ~__cil_tmp6~5.offset;~__cil_tmp8~3.base, ~__cil_tmp8~3.offset := ~head.base, ~head.offset;~__cil_tmp9~3.base, ~__cil_tmp9~3.offset := ~__cil_tmp8~3.base, ~__cil_tmp8~3.offset - (if ~__cil_tmp7~4 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp7~4 % 4294967296 % 4294967296 else ~__cil_tmp7~4 % 4294967296 % 4294967296 - 4294967296);~entry~0.base, ~entry~0.offset := ~__cil_tmp9~3.base, ~__cil_tmp9~3.offset;call #t~mem25 := read~int#2(~entry~0.base, ~entry~0.offset, 4);#res := #t~mem25;havoc #t~mem25;" "assume true;" "assume 0 != ~tmp~3 % 256;" "assume !(0 != ~tmp~3 % 256);" "~tmp~3 := #t~ret30;havoc #t~ret30;" "SUMMARY for call #t~ret30 := gl_sort_pass(); srcloc: while_22_continue" "assume true;" "assume !true;" "assume true;" "assume !true;" "havoc ~tmp~3;" "assume 0 != ~tmp___0~0;" "assume !(0 != ~tmp___0~0);" "havoc #t~nondet22;assume -2147483648 <= #t~nondet22 && #t~nondet22 <= 2147483647;~tmp___0~0 := #t~nondet22;havoc #t~nondet22;" "SUMMARY for call gl_insert(~tmp~1); srcloc: L684-1" "havoc #t~nondet21;assume -2147483648 <= #t~nondet21 && #t~nondet21 <= 2147483647;~tmp~1 := #t~nondet21;havoc #t~nondet21;" "assume true;" "assume !true;" "assume true;" "assume !true;" "havoc ~tmp~1;havoc ~tmp___0~0;" "~__cil_tmp5~4.base, ~__cil_tmp5~4.offset := ~#gl_list~0.base, ~#gl_list~0.offset;call #t~mem24.base, #t~mem24.offset := read~$Pointer$#2(~next~0.base, ~next~0.offset, 4);call write~$Pointer$#2(#t~mem24.base, #t~mem24.offset, ~__cil_tmp5~4.base, ~__cil_tmp5~4.offset, 4);havoc #t~mem24.base, #t~mem24.offset;~__cil_tmp6~4.base, ~__cil_tmp6~4.offset := 0, 0;~__cil_tmp7~3 := ~__cil_tmp6~4.base + ~__cil_tmp6~4.offset;~__cil_tmp8~2 := 4 + ~__cil_tmp7~3;~__cil_tmp9~2.base, ~__cil_tmp9~2.offset := 0, (if ~__cil_tmp8~2 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp8~2 % 4294967296 % 4294967296 else ~__cil_tmp8~2 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp10~2 := ~__cil_tmp9~2.base + ~__cil_tmp9~2.offset;~__cil_tmp11~2.base, ~__cil_tmp11~2.offset := ~next~0.base, ~next~0.offset;~__cil_tmp12~2.base, ~__cil_tmp12~2.offset := ~__cil_tmp11~2.base, ~__cil_tmp11~2.offset - (if ~__cil_tmp10~2 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp10~2 % 4294967296 % 4294967296 else ~__cil_tmp10~2 % 4294967296 % 4294967296 - 4294967296);~__cil_tmp13~2.base, ~__cil_tmp13~2.offset := ~__cil_tmp12~2.base, ~__cil_tmp12~2.offset;~__cil_tmp14~2.base, ~__cil_tmp14~2.offset := ~__cil_tmp13~2.base, ~__cil_tmp13~2.offset;call ULTIMATE.dealloc(~__cil_tmp14~2.base, ~__cil_tmp14~2.offset);" "assume ~__cil_tmp4~5 % 4294967296 != ~__cil_tmp3~4 % 4294967296;" "assume !(~__cil_tmp4~5 % 4294967296 != ~__cil_tmp3~4 % 4294967296);" "~__cil_tmp2~0.base, ~__cil_tmp2~0.offset := ~#gl_list~0.base, ~#gl_list~0.offset;call #t~mem23.base, #t~mem23.offset := read~$Pointer$#2(~__cil_tmp2~0.base, ~__cil_tmp2~0.offset, 4);~next~0.base, ~next~0.offset := #t~mem23.base, #t~mem23.offset;havoc #t~mem23.base, #t~mem23.offset;~__cil_tmp3~4 := ~next~0.base + ~next~0.offset;~__cil_tmp4~5 := ~#gl_list~0.base + ~#gl_list~0.offset;" "assume true;" "assume !true;" "assume true;" "assume !true;" "havoc ~next~0.base, ~next~0.offset;havoc ~__cil_tmp2~0.base, ~__cil_tmp2~0.offset;havoc ~__cil_tmp3~4;havoc ~__cil_tmp4~5;havoc ~__cil_tmp5~4.base, ~__cil_tmp5~4.offset;havoc ~__cil_tmp6~4.base, ~__cil_tmp6~4.offset;havoc ~__cil_tmp7~3;havoc ~__cil_tmp8~2;havoc ~__cil_tmp9~2.base, ~__cil_tmp9~2.offset;havoc ~__cil_tmp10~2;havoc ~__cil_tmp11~2.base, ~__cil_tmp11~2.offset;havoc ~__cil_tmp12~2.base, ~__cil_tmp12~2.offset;havoc ~__cil_tmp13~2.base, ~__cil_tmp13~2.offset;havoc ~__cil_tmp14~2.base, ~__cil_tmp14~2.offset;" "assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);call #Ultimate.allocInit(2, 3);call write~init~int#1(48, 3, 0, 1);call write~init~int#1(0, 3, 1, 1);call #Ultimate.allocInit(12, 4);call #Ultimate.allocInit(8, 5);~#gl_list~0.base, ~#gl_list~0.offset := 5, 0;call write~init~$Pointer$#2(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4);call write~init~$Pointer$#2(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, 4 + ~#gl_list~0.offset, 4);" "assume true;" "SUMMARY for call #t~ret31 := main(); srcloc: L-1" "SUMMARY for call ULTIMATE.init(); srcloc: ULTIMATE.startENTRY" "assume true;" }, returnAlphabet = {"#321#return;" "#323#return;" "#325#return;" "#327#return;" "#329#return;" "#315#return;" "#333#return;" "#317#return;" "#335#return;" "#319#return;" }, states = {"CountingPredicate [underlying: 22#Loop~18true, annotation: [7, 0]]" "CountingPredicate [underlying: 59#L642true, annotation: [2, 0]]" "CountingPredicate [underlying: 29#ULTIMATE.initFINALtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 22#Loop~18true, annotation: [2, 0]]" "CountingPredicate [underlying: 151#Loop~19true, annotation: [1, 0]]" "CountingPredicate [underlying: 57#ULTIMATE.initENTRYtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 25#mainENTRYtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 12#L668true, annotation: [7, 0]]" "CountingPredicate [underlying: 95#L656true, annotation: [7, 0]]" "CountingPredicate [underlying: 135#ULTIMATE.initEXITtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 76#L684-1true, annotation: [1, 0]]" "CountingPredicate [underlying: 12#L668true, annotation: [2, 0]]" "CountingPredicate [underlying: 20#L599true, annotation: [4, 0]]" "CountingPredicate [underlying: 20#L599true, annotation: [2, 0]]" "CountingPredicate [underlying: 48#L-1true, annotation: [0, 0]]" "CountingPredicate [underlying: 164#gl_insertENTRYtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 33#L689true, annotation: [1, 0]]" "CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [6, 0]]" "CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [5, 0]]" "CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [6, 0]]" "CountingPredicate [underlying: 95#L656true, annotation: [2, 0]]" "CountingPredicate [underlying: 102#L653true, annotation: [3, 0]]" "CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [4, 0]]" "CountingPredicate [underlying: 134#L680true, annotation: [1, 0]]" "CountingPredicate [underlying: 102#L653true, annotation: [2, 0]]" "CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 69#L839-1true, annotation: [0, 0]]" "CountingPredicate [underlying: 159#ULTIMATE.startENTRYtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 124#gl_readENTRYtrue, annotation: [1, 0]]" "CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [5, 0]]" "CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [7, 0]]" "CountingPredicate [underlying: 67#while_19_continuetrue, annotation: [1, 0]]" "CountingPredicate [underlying: 168#L649true, annotation: [3, 0]]" "CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 168#L649true, annotation: [2, 0]]" "CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [2, 0]]" "CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [5, 0]]" }, initialStates = {"CountingPredicate [underlying: 159#ULTIMATE.startENTRYtrue, annotation: [0, 0]]" }, finalStates = {}, callTransitions = { ("CountingPredicate [underlying: 76#L684-1true, annotation: [1, 0]]" "call gl_insert(~tmp~1);" "CountingPredicate [underlying: 164#gl_insertENTRYtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 20#L599true, annotation: [4, 0]]" "call __list_add(~new.base, ~new.offset, ~head.base, ~head.offset, ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset);" "CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [5, 0]]") ("CountingPredicate [underlying: 20#L599true, annotation: [2, 0]]" "call __list_add(~new.base, ~new.offset, ~head.base, ~head.offset, ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset);" "CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 48#L-1true, annotation: [0, 0]]" "call #t~ret31 := main();" "CountingPredicate [underlying: 25#mainENTRYtrue, annotation: [0, 0]]") ("CountingPredicate [underlying: 102#L653true, annotation: [3, 0]]" "call list_add(~__cil_tmp7~2.base, ~__cil_tmp7~2.offset, ~#gl_list~0.base, ~#gl_list~0.offset);" "CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [4, 0]]") ("CountingPredicate [underlying: 102#L653true, annotation: [2, 0]]" "call list_add(~__cil_tmp7~2.base, ~__cil_tmp7~2.offset, ~#gl_list~0.base, ~#gl_list~0.offset);" "CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 69#L839-1true, annotation: [0, 0]]" "call gl_read();" "CountingPredicate [underlying: 124#gl_readENTRYtrue, annotation: [1, 0]]") ("CountingPredicate [underlying: 159#ULTIMATE.startENTRYtrue, annotation: [0, 0]]" "call ULTIMATE.init();" "CountingPredicate [underlying: 57#ULTIMATE.initENTRYtrue, annotation: [0, 0]]") }, internalTransitions = { ("CountingPredicate [underlying: 22#Loop~18true, annotation: [7, 0]]" "assume true;" "CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [7, 0]]") ("CountingPredicate [underlying: 22#Loop~18true, annotation: [7, 0]]" "assume !true;" "CountingPredicate [underlying: 12#L668true, annotation: [7, 0]]") ("CountingPredicate [underlying: 59#L642true, annotation: [2, 0]]" "assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;" "CountingPredicate [underlying: 168#L649true, annotation: [2, 0]]") ("CountingPredicate [underlying: 59#L642true, annotation: [2, 0]]" "assume !(~node~1.base == 0 && ~node~1.offset == 0);" "CountingPredicate [underlying: 168#L649true, annotation: [3, 0]]") ("CountingPredicate [underlying: 29#ULTIMATE.initFINALtrue, annotation: [0, 0]]" "assume true;" "CountingPredicate [underlying: 135#ULTIMATE.initEXITtrue, annotation: [0, 0]]") ("CountingPredicate [underlying: 22#Loop~18true, annotation: [2, 0]]" "assume true;" "CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 22#Loop~18true, annotation: [2, 0]]" "assume !true;" "CountingPredicate [underlying: 12#L668true, annotation: [2, 0]]") ("CountingPredicate [underlying: 151#Loop~19true, annotation: [1, 0]]" "assume true;" "CountingPredicate [underlying: 67#while_19_continuetrue, annotation: [1, 0]]") ("CountingPredicate [underlying: 151#Loop~19true, annotation: [1, 0]]" "assume !true;" "CountingPredicate [underlying: 33#L689true, annotation: [1, 0]]") ("CountingPredicate [underlying: 57#ULTIMATE.initENTRYtrue, annotation: [0, 0]]" "assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);call #Ultimate.allocInit(2, 3);call write~init~int#1(48, 3, 0, 1);call write~init~int#1(0, 3, 1, 1);call #Ultimate.allocInit(12, 4);call #Ultimate.allocInit(8, 5);~#gl_list~0.base, ~#gl_list~0.offset := 5, 0;call write~init~$Pointer$#2(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4);call write~init~$Pointer$#2(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, 4 + ~#gl_list~0.offset, 4);" "CountingPredicate [underlying: 29#ULTIMATE.initFINALtrue, annotation: [0, 0]]") ("CountingPredicate [underlying: 25#mainENTRYtrue, annotation: [0, 0]]" "havoc ~__cil_tmp1~0.base, ~__cil_tmp1~0.offset;havoc ~__cil_tmp2~1.base, ~__cil_tmp2~1.offset;" "CountingPredicate [underlying: 69#L839-1true, annotation: [0, 0]]") ("CountingPredicate [underlying: 95#L656true, annotation: [7, 0]]" "assume true;" "CountingPredicate [underlying: 22#Loop~18true, annotation: [7, 0]]") ("CountingPredicate [underlying: 95#L656true, annotation: [7, 0]]" "assume !true;" "CountingPredicate [underlying: 12#L668true, annotation: [7, 0]]") ("CountingPredicate [underlying: 164#gl_insertENTRYtrue, annotation: [2, 0]]" "~value := #in~value;havoc ~node~1.base, ~node~1.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~__cil_tmp4~4;havoc ~__cil_tmp5~3;havoc ~__cil_tmp6~3;havoc ~__cil_tmp7~2.base, ~__cil_tmp7~2.offset;havoc ~__cil_tmp8~1;havoc ~__cil_tmp9~1;havoc ~__cil_tmp10~1;havoc ~__cil_tmp11~1;havoc ~__cil_tmp12~1;havoc ~__cil_tmp13~1;havoc ~__cil_tmp14~1;havoc ~__cil_tmp15~1;~__cil_tmp4~4 := 20;call #t~malloc20.base, #t~malloc20.offset := #Ultimate.allocOnHeap(~__cil_tmp4~4 % 4294967296);~tmp~0.base, ~tmp~0.offset := #t~malloc20.base, #t~malloc20.offset;havoc #t~malloc20.base, #t~malloc20.offset;~node~1.base, ~node~1.offset := ~tmp~0.base, ~tmp~0.offset;" "CountingPredicate [underlying: 59#L642true, annotation: [2, 0]]") ("CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [2, 0]]" "assume true;" "CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [6, 0]]" "assume true;" "CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [6, 0]]") ("CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [2, 0]]" "assume true;" "CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [5, 0]]" "assume true;" "CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [5, 0]]") ("CountingPredicate [underlying: 95#L656true, annotation: [2, 0]]" "assume true;" "CountingPredicate [underlying: 22#Loop~18true, annotation: [2, 0]]") ("CountingPredicate [underlying: 95#L656true, annotation: [2, 0]]" "assume !true;" "CountingPredicate [underlying: 12#L668true, annotation: [2, 0]]") ("CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [4, 0]]" "~new.base, ~new.offset := #in~new.base, #in~new.offset;~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset;call #t~mem17.base, #t~mem17.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp3~2.base, ~__cil_tmp3~2.offset := #t~mem17.base, #t~mem17.offset;havoc #t~mem17.base, #t~mem17.offset;" "CountingPredicate [underlying: 20#L599true, annotation: [4, 0]]") ("CountingPredicate [underlying: 134#L680true, annotation: [1, 0]]" "assume true;" "CountingPredicate [underlying: 151#Loop~19true, annotation: [1, 0]]") ("CountingPredicate [underlying: 134#L680true, annotation: [1, 0]]" "assume !true;" "CountingPredicate [underlying: 33#L689true, annotation: [1, 0]]") ("CountingPredicate [underlying: 177#list_addENTRYtrue, annotation: [2, 0]]" "~new.base, ~new.offset := #in~new.base, #in~new.offset;~head.base, ~head.offset := #in~head.base, #in~head.offset;havoc ~__cil_tmp3~2.base, ~__cil_tmp3~2.offset;call #t~mem17.base, #t~mem17.offset := read~$Pointer$#2(~head.base, ~head.offset, 4);~__cil_tmp3~2.base, ~__cil_tmp3~2.offset := #t~mem17.base, #t~mem17.offset;havoc #t~mem17.base, #t~mem17.offset;" "CountingPredicate [underlying: 20#L599true, annotation: [2, 0]]") ("CountingPredicate [underlying: 124#gl_readENTRYtrue, annotation: [1, 0]]" "havoc ~tmp~1;havoc ~tmp___0~0;" "CountingPredicate [underlying: 134#L680true, annotation: [1, 0]]") ("CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [5, 0]]" "~new.base, ~new.offset := #in~new.base, #in~new.offset;~prev.base, ~prev.offset := #in~prev.base, #in~prev.offset;~next.base, ~next.offset := #in~next.base, #in~next.offset;havoc ~__cil_tmp4~1;havoc ~__cil_tmp5~1;havoc ~__cil_tmp6~1;havoc ~__cil_tmp7~1;~__cil_tmp4~1 := ~next.base + ~next.offset;~__cil_tmp5~1 := 4 + ~__cil_tmp4~1;call write~$Pointer$#4(~new.base, ~new.offset, 0, (if ~__cil_tmp5~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp5~1 % 4294967296 % 4294967296 else ~__cil_tmp5~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~next.base, ~next.offset, ~new.base, ~new.offset, 4);~__cil_tmp6~1 := ~new.base + ~new.offset;~__cil_tmp7~1 := 4 + ~__cil_tmp6~1;call write~$Pointer$#4(~prev.base, ~prev.offset, 0, (if ~__cil_tmp7~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp7~1 % 4294967296 % 4294967296 else ~__cil_tmp7~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~new.base, ~new.offset, ~prev.base, ~prev.offset, 4);" "CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [5, 0]]") ("CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [7, 0]]" "~__cil_tmp8~1 := ~node~1.base + ~node~1.offset;~__cil_tmp9~1 := 12 + ~__cil_tmp8~1;~__cil_tmp10~1 := ~node~1.base + ~node~1.offset;~__cil_tmp11~1 := 12 + ~__cil_tmp10~1;call write~$Pointer$#4(0, (if ~__cil_tmp11~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp11~1 % 4294967296 % 4294967296 else ~__cil_tmp11~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp9~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp9~1 % 4294967296 % 4294967296 else ~__cil_tmp9~1 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp12~1 := ~node~1.base + ~node~1.offset;~__cil_tmp13~1 := 12 + ~__cil_tmp12~1;~__cil_tmp14~1 := ~node~1.base + ~node~1.offset;~__cil_tmp15~1 := 12 + ~__cil_tmp14~1;call write~$Pointer$#4(0, (if ~__cil_tmp15~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp15~1 % 4294967296 % 4294967296 else ~__cil_tmp15~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp13~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp13~1 % 4294967296 % 4294967296 else ~__cil_tmp13~1 % 4294967296 % 4294967296 - 4294967296), 4);" "CountingPredicate [underlying: 12#L668true, annotation: [7, 0]]") ("CountingPredicate [underlying: 67#while_19_continuetrue, annotation: [1, 0]]" "havoc #t~nondet21;assume -2147483648 <= #t~nondet21 && #t~nondet21 <= 2147483647;~tmp~1 := #t~nondet21;havoc #t~nondet21;" "CountingPredicate [underlying: 76#L684-1true, annotation: [1, 0]]") ("CountingPredicate [underlying: 168#L649true, annotation: [3, 0]]" "call write~int#3(~value, ~node~1.base, ~node~1.offset, 4);~__cil_tmp5~3 := ~node~1.base + ~node~1.offset;~__cil_tmp6~3 := 4 + ~__cil_tmp5~3;~__cil_tmp7~2.base, ~__cil_tmp7~2.offset := 0, (if ~__cil_tmp6~3 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp6~3 % 4294967296 % 4294967296 else ~__cil_tmp6~3 % 4294967296 % 4294967296 - 4294967296);" "CountingPredicate [underlying: 102#L653true, annotation: [3, 0]]") ("CountingPredicate [underlying: 168#L649true, annotation: [2, 0]]" "call write~int#3(~value, ~node~1.base, ~node~1.offset, 4);~__cil_tmp5~3 := ~node~1.base + ~node~1.offset;~__cil_tmp6~3 := 4 + ~__cil_tmp5~3;~__cil_tmp7~2.base, ~__cil_tmp7~2.offset := 0, (if ~__cil_tmp6~3 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp6~3 % 4294967296 % 4294967296 else ~__cil_tmp6~3 % 4294967296 % 4294967296 - 4294967296);" "CountingPredicate [underlying: 102#L653true, annotation: [2, 0]]") ("CountingPredicate [underlying: 128#__list_addENTRYtrue, annotation: [2, 0]]" "~new.base, ~new.offset := #in~new.base, #in~new.offset;~prev.base, ~prev.offset := #in~prev.base, #in~prev.offset;~next.base, ~next.offset := #in~next.base, #in~next.offset;havoc ~__cil_tmp4~1;havoc ~__cil_tmp5~1;havoc ~__cil_tmp6~1;havoc ~__cil_tmp7~1;~__cil_tmp4~1 := ~next.base + ~next.offset;~__cil_tmp5~1 := 4 + ~__cil_tmp4~1;call write~$Pointer$#4(~new.base, ~new.offset, 0, (if ~__cil_tmp5~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp5~1 % 4294967296 % 4294967296 else ~__cil_tmp5~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~next.base, ~next.offset, ~new.base, ~new.offset, 4);~__cil_tmp6~1 := ~new.base + ~new.offset;~__cil_tmp7~1 := 4 + ~__cil_tmp6~1;call write~$Pointer$#4(~prev.base, ~prev.offset, 0, (if ~__cil_tmp7~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp7~1 % 4294967296 % 4294967296 else ~__cil_tmp7~1 % 4294967296 % 4294967296 - 4294967296), 4);call write~$Pointer$#2(~new.base, ~new.offset, ~prev.base, ~prev.offset, 4);" "CountingPredicate [underlying: 32#__list_addFINALtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 142#while_18_continuetrue, annotation: [2, 0]]" "~__cil_tmp8~1 := ~node~1.base + ~node~1.offset;~__cil_tmp9~1 := 12 + ~__cil_tmp8~1;~__cil_tmp10~1 := ~node~1.base + ~node~1.offset;~__cil_tmp11~1 := 12 + ~__cil_tmp10~1;call write~$Pointer$#4(0, (if ~__cil_tmp11~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp11~1 % 4294967296 % 4294967296 else ~__cil_tmp11~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp9~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp9~1 % 4294967296 % 4294967296 else ~__cil_tmp9~1 % 4294967296 % 4294967296 - 4294967296), 4);~__cil_tmp12~1 := ~node~1.base + ~node~1.offset;~__cil_tmp13~1 := 12 + ~__cil_tmp12~1;~__cil_tmp14~1 := ~node~1.base + ~node~1.offset;~__cil_tmp15~1 := 12 + ~__cil_tmp14~1;call write~$Pointer$#4(0, (if ~__cil_tmp15~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp15~1 % 4294967296 % 4294967296 else ~__cil_tmp15~1 % 4294967296 % 4294967296 - 4294967296), 0, (if ~__cil_tmp13~1 % 4294967296 % 4294967296 <= 2147483647 then ~__cil_tmp13~1 % 4294967296 % 4294967296 else ~__cil_tmp13~1 % 4294967296 % 4294967296 - 4294967296), 4);" "CountingPredicate [underlying: 12#L668true, annotation: [2, 0]]") }, returnTransitions = { ("CountingPredicate [underlying: 135#ULTIMATE.initEXITtrue, annotation: [0, 0]]" "CountingPredicate [underlying: 159#ULTIMATE.startENTRYtrue, annotation: [0, 0]]" "#335#return;" "CountingPredicate [underlying: 48#L-1true, annotation: [0, 0]]") ("CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [6, 0]]" "CountingPredicate [underlying: 102#L653true, annotation: [3, 0]]" "#317#return;" "CountingPredicate [underlying: 95#L656true, annotation: [7, 0]]") ("CountingPredicate [underlying: 166#list_addEXITtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 102#L653true, annotation: [2, 0]]" "#317#return;" "CountingPredicate [underlying: 95#L656true, annotation: [2, 0]]") ("CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [2, 0]]" "CountingPredicate [underlying: 20#L599true, annotation: [2, 0]]" "#315#return;" "CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [2, 0]]") ("CountingPredicate [underlying: 21#__list_addEXITtrue, annotation: [5, 0]]" "CountingPredicate [underlying: 20#L599true, annotation: [4, 0]]" "#315#return;" "CountingPredicate [underlying: 109#list_addFINALtrue, annotation: [6, 0]]") } ); [2024-08-07 14:08:28,908 INFO L82 GeneralOperation]: Start removeDeadEnds. Operand has 178 states, 130 states have (on average 1.5538461538461539) internal successors, (202), 149 states have internal predecessors, (202), 33 states have call successors, (33), 14 states have call predecessors, (33), 8 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2024-08-07 14:08:28,914 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,914 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,915 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,915 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,915 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,915 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,916 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,916 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,917 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,917 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,918 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,918 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,919 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,919 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,920 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,920 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,921 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,921 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,922 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,922 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,923 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,924 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,924 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,924 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,925 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,925 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,926 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,926 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,927 WARN L283 nessProductAutomaton]: assume ~node~1.base == 0 && ~node~1.offset == 0;assume false;, isNegated false [2024-08-07 14:08:28,927 WARN L283 nessProductAutomaton]: assume !(~node~1.base == 0 && ~node~1.offset == 0);, isNegated true [2024-08-07 14:08:28,935 INFO L88 GeneralOperation]: Finished removeDeadEnds. Reduced from 41 states to 0 states. [2024-08-07 14:08:28,963 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-08-07 14:08:28,971 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@67b718b1, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-07 14:08:28,972 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-08-07 14:08:28,973 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states. [2024-08-07 14:08:28,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2024-08-07 14:08:28,975 INFO L805 garLoopResultBuilder]: Registering result SAFE for location failErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2024-08-07 14:08:28,978 INFO L445 BasicCegarLoop]: Path program histogram: [] [2024-08-07 14:08:28,980 INFO L196 ceAbstractionStarter]: Computing trace abstraction results [2024-08-07 14:08:28,983 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.08 02:08:28 BoogieIcfgContainer [2024-08-07 14:08:28,983 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-08-07 14:08:28,984 INFO L158 Benchmark]: Toolchain (without parser) took 1532.59ms. Allocated memory was 81.8MB in the beginning and 121.6MB in the end (delta: 39.8MB). Free memory was 42.6MB in the beginning and 67.6MB in the end (delta: -25.0MB). Peak memory consumption was 17.5MB. Max. memory is 16.1GB. [2024-08-07 14:08:28,984 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 81.8MB. Free memory is still 63.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-07 14:08:28,984 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 81.8MB. Free memory is still 60.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-07 14:08:28,985 INFO L158 Benchmark]: CACSL2BoogieTranslator took 391.77ms. Allocated memory is still 81.8MB. Free memory was 42.5MB in the beginning and 48.1MB in the end (delta: -5.6MB). Peak memory consumption was 13.9MB. Max. memory is 16.1GB. [2024-08-07 14:08:28,985 INFO L158 Benchmark]: Boogie Preprocessor took 118.88ms. Allocated memory is still 81.8MB. Free memory was 47.7MB in the beginning and 39.7MB in the end (delta: 8.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-08-07 14:08:28,985 INFO L158 Benchmark]: IcfgBuilder took 840.48ms. Allocated memory was 81.8MB in the beginning and 121.6MB in the end (delta: 39.8MB). Free memory was 39.4MB in the beginning and 92.8MB in the end (delta: -53.4MB). Peak memory consumption was 24.6MB. Max. memory is 16.1GB. [2024-08-07 14:08:28,986 INFO L158 Benchmark]: TraceAbstraction took 177.36ms. Allocated memory is still 121.6MB. Free memory was 92.1MB in the beginning and 67.6MB in the end (delta: 24.5MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2024-08-07 14:08:28,987 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.16ms. Allocated memory is still 81.8MB. Free memory is still 63.2MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.12ms. Allocated memory is still 81.8MB. Free memory is still 60.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 391.77ms. Allocated memory is still 81.8MB. Free memory was 42.5MB in the beginning and 48.1MB in the end (delta: -5.6MB). Peak memory consumption was 13.9MB. Max. memory is 16.1GB. * Boogie Preprocessor took 118.88ms. Allocated memory is still 81.8MB. Free memory was 47.7MB in the beginning and 39.7MB in the end (delta: 8.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 840.48ms. Allocated memory was 81.8MB in the beginning and 121.6MB in the end (delta: 39.8MB). Free memory was 39.4MB in the beginning and 92.8MB in the end (delta: -53.4MB). Peak memory consumption was 24.6MB. Max. memory is 16.1GB. * TraceAbstraction took 177.36ms. Allocated memory is still 121.6MB. Free memory was 92.1MB in the beginning and 67.6MB in the end (delta: 24.5MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 46]: a call to reach_error is unreachable For all program executions holds that a call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 16 procedures, 187 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.1s, OverallIterations: 0, TraceHistogramMax: 0, PathProgramHistogramMax: 0, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=0occurred in iteration=0, InterpolantAutomatonStates: 0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-08-07 14:08:29,013 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE