./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/list-simple/sll2c_append_unequal.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -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/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-simple/sll2c_append_unequal.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d83e632829c1e193271bd76b90e08187eb94c70000e5f11d7aea101b3ec9a9e6 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:58:35,845 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:58:35,848 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:58:35,870 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:58:35,871 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:58:35,871 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:58:35,872 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:58:35,874 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:58:35,875 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:58:35,876 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:58:35,876 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:58:35,877 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:58:35,877 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:58:35,878 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:58:35,879 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:58:35,880 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:58:35,880 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:58:35,881 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:58:35,882 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:58:35,883 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:58:35,884 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:58:35,885 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:58:35,886 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:58:35,887 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:58:35,889 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:58:35,889 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:58:35,889 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:58:35,890 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:58:35,890 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:58:35,891 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:58:35,891 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:58:35,891 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:58:35,892 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:58:35,893 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:58:35,893 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:58:35,893 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:58:35,894 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:58:35,894 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:58:35,894 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:58:35,895 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:58:35,895 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:58:35,896 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2022-02-20 23:58:35,909 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:58:35,909 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:58:35,909 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:58:35,910 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:58:35,910 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:58:35,910 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:58:35,911 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:58:35,911 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:58:35,911 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:58:35,911 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:58:35,911 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:58:35,912 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:58:35,913 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:58:35,913 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:58:35,914 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:58:35,914 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:58:35,914 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:58:35,914 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:58:35,914 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:58:35,914 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> d83e632829c1e193271bd76b90e08187eb94c70000e5f11d7aea101b3ec9a9e6 [2022-02-20 23:58:36,092 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:58:36,111 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:58:36,113 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:58:36,114 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:58:36,114 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:58:36,115 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-simple/sll2c_append_unequal.i [2022-02-20 23:58:36,175 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/902712106/c456b17ca45e4e3b8c66729d458a48d7/FLAG89ef6564b [2022-02-20 23:58:36,539 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:58:36,540 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i [2022-02-20 23:58:36,551 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/902712106/c456b17ca45e4e3b8c66729d458a48d7/FLAG89ef6564b [2022-02-20 23:58:36,907 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/902712106/c456b17ca45e4e3b8c66729d458a48d7 [2022-02-20 23:58:36,910 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:58:36,914 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:58:36,924 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:58:36,924 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:58:36,927 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:58:36,928 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:58:36" (1/1) ... [2022-02-20 23:58:36,934 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@564fa9f1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:36, skipping insertion in model container [2022-02-20 23:58:36,934 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:58:36" (1/1) ... [2022-02-20 23:58:36,938 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:58:36,968 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:58:37,220 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i[24587,24600] [2022-02-20 23:58:37,227 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:58:37,234 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:58:37,278 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i[24587,24600] [2022-02-20 23:58:37,288 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:58:37,311 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:58:37,311 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37 WrapperNode [2022-02-20 23:58:37,311 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:58:37,312 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:58:37,312 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:58:37,312 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:58:37,318 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,330 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,352 INFO L137 Inliner]: procedures = 127, calls = 46, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 164 [2022-02-20 23:58:37,353 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:58:37,354 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:58:37,354 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:58:37,354 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:58:37,359 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,360 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,377 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,377 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,387 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,398 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,402 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,407 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:58:37,416 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:58:37,416 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:58:37,416 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:58:37,417 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (1/1) ... [2022-02-20 23:58:37,422 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:58:37,429 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:58:37,438 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 23:58:37,440 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 23:58:37,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:58:37,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:58:37,467 INFO L130 BoogieDeclarations]: Found specification of procedure node_create [2022-02-20 23:58:37,467 INFO L138 BoogieDeclarations]: Found implementation of procedure node_create [2022-02-20 23:58:37,467 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:58:37,467 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:58:37,468 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:58:37,468 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:58:37,544 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:58:37,545 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:58:38,005 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:58:38,012 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:58:38,016 INFO L299 CfgBuilder]: Removed 5 assume(true) statements. [2022-02-20 23:58:38,017 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:58:38 BoogieIcfgContainer [2022-02-20 23:58:38,018 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:58:38,020 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:58:38,020 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:58:38,022 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:58:38,022 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:58:36" (1/3) ... [2022-02-20 23:58:38,023 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@56b9f98c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:58:38, skipping insertion in model container [2022-02-20 23:58:38,023 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:37" (2/3) ... [2022-02-20 23:58:38,024 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@56b9f98c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:58:38, skipping insertion in model container [2022-02-20 23:58:38,024 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:58:38" (3/3) ... [2022-02-20 23:58:38,025 INFO L111 eAbstractionObserver]: Analyzing ICFG sll2c_append_unequal.i [2022-02-20 23:58:38,028 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:58:38,029 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 58 error locations. [2022-02-20 23:58:38,063 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:58:38,068 INFO L339 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=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 23:58:38,068 INFO L340 AbstractCegarLoop]: Starting to check reachability of 58 error locations. [2022-02-20 23:58:38,116 INFO L276 IsEmpty]: Start isEmpty. Operand has 132 states, 69 states have (on average 2.072463768115942) internal successors, (143), 127 states have internal predecessors, (143), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:38,123 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:58:38,123 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:38,124 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:58:38,124 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting node_createErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:38,128 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:38,129 INFO L85 PathProgramCache]: Analyzing trace with hash 895983381, now seen corresponding path program 1 times [2022-02-20 23:58:38,134 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:38,144 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [230598514] [2022-02-20 23:58:38,144 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:38,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:38,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:38,398 INFO L290 TraceCheckUtils]: 0: Hoare triple {135#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {135#true} is VALID [2022-02-20 23:58:38,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {135#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {135#true} is VALID [2022-02-20 23:58:38,399 INFO L272 TraceCheckUtils]: 2: Hoare triple {135#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {135#true} is VALID [2022-02-20 23:58:38,400 INFO L290 TraceCheckUtils]: 3: Hoare triple {135#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {137#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:38,401 INFO L290 TraceCheckUtils]: 4: Hoare triple {137#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {137#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:38,402 INFO L290 TraceCheckUtils]: 5: Hoare triple {137#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} assume !(1 == #valid[~temp~0#1.base]); {136#false} is VALID [2022-02-20 23:58:38,403 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:38,403 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:38,403 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [230598514] [2022-02-20 23:58:38,404 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [230598514] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:38,404 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:38,404 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:58:38,406 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1975686981] [2022-02-20 23:58:38,407 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:38,410 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:38,410 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:38,412 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:38,421 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:58:38,421 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:38,437 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:58:38,437 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:38,440 INFO L87 Difference]: Start difference. First operand has 132 states, 69 states have (on average 2.072463768115942) internal successors, (143), 127 states have internal predecessors, (143), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:38,651 INFO L93 Difference]: Finished difference Result 130 states and 141 transitions. [2022-02-20 23:58:38,652 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:58:38,652 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:38,652 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:38,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:58:38,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:58:38,669 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 149 transitions. [2022-02-20 23:58:38,783 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:38,791 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:58:38,791 INFO L226 Difference]: Without dead ends: 127 [2022-02-20 23:58:38,795 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:38,797 INFO L933 BasicCegarLoop]: 134 mSDtfsCounter, 8 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 207 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:38,812 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 207 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:58:38,836 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-02-20 23:58:38,847 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 127. [2022-02-20 23:58:38,847 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:38,854 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:38,856 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:38,857 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:38,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:38,867 INFO L93 Difference]: Finished difference Result 127 states and 137 transitions. [2022-02-20 23:58:38,867 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:38,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:38,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:38,868 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 127 states. [2022-02-20 23:58:38,869 INFO L87 Difference]: Start difference. First operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 127 states. [2022-02-20 23:58:38,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:38,876 INFO L93 Difference]: Finished difference Result 127 states and 137 transitions. [2022-02-20 23:58:38,876 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:38,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:38,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:38,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:38,879 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:38,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:38,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 137 transitions. [2022-02-20 23:58:38,886 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 137 transitions. Word has length 6 [2022-02-20 23:58:38,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:38,886 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 137 transitions. [2022-02-20 23:58:38,887 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,887 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:38,887 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:58:38,888 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:38,888 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:58:38,888 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:58:38,888 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting node_createErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:38,888 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:38,889 INFO L85 PathProgramCache]: Analyzing trace with hash 895983382, now seen corresponding path program 1 times [2022-02-20 23:58:38,889 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:38,889 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1657682511] [2022-02-20 23:58:38,889 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:38,889 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:38,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:38,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {651#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {651#true} is VALID [2022-02-20 23:58:38,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {651#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {651#true} is VALID [2022-02-20 23:58:38,943 INFO L272 TraceCheckUtils]: 2: Hoare triple {651#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {651#true} is VALID [2022-02-20 23:58:38,943 INFO L290 TraceCheckUtils]: 3: Hoare triple {651#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {653#(and (= |node_create_~temp~0#1.offset| 0) (= (+ (select |#length| |node_create_~temp~0#1.base|) (- 8)) 0))} is VALID [2022-02-20 23:58:38,947 INFO L290 TraceCheckUtils]: 4: Hoare triple {653#(and (= |node_create_~temp~0#1.offset| 0) (= (+ (select |#length| |node_create_~temp~0#1.base|) (- 8)) 0))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {653#(and (= |node_create_~temp~0#1.offset| 0) (= (+ (select |#length| |node_create_~temp~0#1.base|) (- 8)) 0))} is VALID [2022-02-20 23:58:38,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {653#(and (= |node_create_~temp~0#1.offset| 0) (= (+ (select |#length| |node_create_~temp~0#1.base|) (- 8)) 0))} assume !(4 + ~temp~0#1.offset <= #length[~temp~0#1.base] && 0 <= ~temp~0#1.offset); {652#false} is VALID [2022-02-20 23:58:38,948 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:38,948 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:38,948 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1657682511] [2022-02-20 23:58:38,949 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1657682511] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:38,949 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:38,949 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:58:38,949 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [17047421] [2022-02-20 23:58:38,949 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:38,950 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:38,950 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:38,950 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:38,955 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:38,956 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:58:38,956 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:38,956 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:58:38,957 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:38,957 INFO L87 Difference]: Start difference. First operand 127 states and 137 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:39,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,141 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:39,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:58:39,142 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:39,142 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:39,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:39,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 23:58:39,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:39,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 23:58:39,146 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 137 transitions. [2022-02-20 23:58:39,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:39,253 INFO L225 Difference]: With dead ends: 125 [2022-02-20 23:58:39,254 INFO L226 Difference]: Without dead ends: 125 [2022-02-20 23:58:39,254 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:39,255 INFO L933 BasicCegarLoop]: 131 mSDtfsCounter, 4 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:39,255 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 209 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:58:39,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-02-20 23:58:39,259 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 125. [2022-02-20 23:58:39,259 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:39,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,260 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,261 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,264 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:39,264 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:39,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:39,265 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:39,265 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:39,265 INFO L87 Difference]: Start difference. First operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:39,269 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,269 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:39,269 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:39,270 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:39,270 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:39,270 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:39,270 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:39,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 135 transitions. [2022-02-20 23:58:39,273 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 135 transitions. Word has length 6 [2022-02-20 23:58:39,273 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:39,274 INFO L470 AbstractCegarLoop]: Abstraction has 125 states and 135 transitions. [2022-02-20 23:58:39,274 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:39,274 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:39,274 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:58:39,274 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:39,275 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:39,275 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:58:39,275 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:39,275 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:39,276 INFO L85 PathProgramCache]: Analyzing trace with hash 229520599, now seen corresponding path program 1 times [2022-02-20 23:58:39,276 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:39,276 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [901632570] [2022-02-20 23:58:39,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:39,276 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:39,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:39,318 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:39,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:39,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {1166#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1156#true} is VALID [2022-02-20 23:58:39,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {1156#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1156#true} is VALID [2022-02-20 23:58:39,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {1156#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1156#true} is VALID [2022-02-20 23:58:39,338 INFO L290 TraceCheckUtils]: 3: Hoare triple {1156#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1156#true} is VALID [2022-02-20 23:58:39,338 INFO L290 TraceCheckUtils]: 4: Hoare triple {1156#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1156#true} is VALID [2022-02-20 23:58:39,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {1156#true} assume true; {1156#true} is VALID [2022-02-20 23:58:39,339 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1156#true} {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} #217#return; {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} is VALID [2022-02-20 23:58:39,340 INFO L290 TraceCheckUtils]: 0: Hoare triple {1156#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {1156#true} is VALID [2022-02-20 23:58:39,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {1156#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} is VALID [2022-02-20 23:58:39,341 INFO L272 TraceCheckUtils]: 2: Hoare triple {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {1166#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:39,341 INFO L290 TraceCheckUtils]: 3: Hoare triple {1166#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1156#true} is VALID [2022-02-20 23:58:39,341 INFO L290 TraceCheckUtils]: 4: Hoare triple {1156#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1156#true} is VALID [2022-02-20 23:58:39,342 INFO L290 TraceCheckUtils]: 5: Hoare triple {1156#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1156#true} is VALID [2022-02-20 23:58:39,342 INFO L290 TraceCheckUtils]: 6: Hoare triple {1156#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1156#true} is VALID [2022-02-20 23:58:39,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {1156#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1156#true} is VALID [2022-02-20 23:58:39,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {1156#true} assume true; {1156#true} is VALID [2022-02-20 23:58:39,343 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1156#true} {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} #217#return; {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} is VALID [2022-02-20 23:58:39,343 INFO L290 TraceCheckUtils]: 10: Hoare triple {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} is VALID [2022-02-20 23:58:39,344 INFO L290 TraceCheckUtils]: 11: Hoare triple {1158#(= (+ (- 2) |ULTIMATE.start_sll_circular_create_~len#1|) 0)} assume !(sll_circular_create_~len#1 > 1); {1157#false} is VALID [2022-02-20 23:58:39,344 INFO L290 TraceCheckUtils]: 12: Hoare triple {1157#false} assume !(1 == #valid[sll_circular_create_~last~0#1.base]); {1157#false} is VALID [2022-02-20 23:58:39,344 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:39,344 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:39,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [901632570] [2022-02-20 23:58:39,345 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [901632570] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:39,345 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:39,345 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:58:39,345 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1664388743] [2022-02-20 23:58:39,345 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:39,346 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:58:39,346 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:39,346 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:39,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:39,363 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:58:39,363 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:39,363 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:58:39,363 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:58:39,364 INFO L87 Difference]: Start difference. First operand 125 states and 135 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:39,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,606 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:39,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:58:39,607 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:58:39,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:39,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:39,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 144 transitions. [2022-02-20 23:58:39,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:39,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 144 transitions. [2022-02-20 23:58:39,611 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 144 transitions. [2022-02-20 23:58:39,701 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:39,702 INFO L225 Difference]: With dead ends: 132 [2022-02-20 23:58:39,702 INFO L226 Difference]: Without dead ends: 132 [2022-02-20 23:58:39,703 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:58:39,704 INFO L933 BasicCegarLoop]: 133 mSDtfsCounter, 5 mSDsluCounter, 178 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 311 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:39,704 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 311 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:58:39,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-02-20 23:58:39,708 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 126. [2022-02-20 23:58:39,708 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:39,708 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,708 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,709 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,711 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:39,711 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 143 transitions. [2022-02-20 23:58:39,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:39,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:39,712 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 132 states. [2022-02-20 23:58:39,713 INFO L87 Difference]: Start difference. First operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 132 states. [2022-02-20 23:58:39,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:39,716 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:39,716 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 143 transitions. [2022-02-20 23:58:39,716 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:39,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:39,717 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:39,717 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:39,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:39,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 136 transitions. [2022-02-20 23:58:39,720 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 136 transitions. Word has length 13 [2022-02-20 23:58:39,720 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:39,720 INFO L470 AbstractCegarLoop]: Abstraction has 126 states and 136 transitions. [2022-02-20 23:58:39,720 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:39,720 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 136 transitions. [2022-02-20 23:58:39,721 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:58:39,721 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:39,721 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:39,721 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:58:39,721 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:39,722 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:39,722 INFO L85 PathProgramCache]: Analyzing trace with hash 2102414876, now seen corresponding path program 1 times [2022-02-20 23:58:39,722 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:39,722 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [278396837] [2022-02-20 23:58:39,722 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:39,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:39,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:39,781 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:39,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:39,793 INFO L290 TraceCheckUtils]: 0: Hoare triple {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,794 INFO L290 TraceCheckUtils]: 1: Hoare triple {1691#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1691#true} is VALID [2022-02-20 23:58:39,794 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1691#true} is VALID [2022-02-20 23:58:39,794 INFO L290 TraceCheckUtils]: 3: Hoare triple {1691#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1691#true} is VALID [2022-02-20 23:58:39,794 INFO L290 TraceCheckUtils]: 4: Hoare triple {1691#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#true} assume true; {1691#true} is VALID [2022-02-20 23:58:39,795 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1691#true} {1691#true} #217#return; {1691#true} is VALID [2022-02-20 23:58:39,795 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 23:58:39,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:39,821 INFO L290 TraceCheckUtils]: 0: Hoare triple {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {1691#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1691#true} is VALID [2022-02-20 23:58:39,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:39,823 INFO L290 TraceCheckUtils]: 3: Hoare triple {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:39,823 INFO L290 TraceCheckUtils]: 4: Hoare triple {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:39,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:39,824 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} {1691#true} #219#return; {1707#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 1)} is VALID [2022-02-20 23:58:39,825 INFO L290 TraceCheckUtils]: 0: Hoare triple {1691#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {1691#true} is VALID [2022-02-20 23:58:39,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {1691#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {1691#true} is VALID [2022-02-20 23:58:39,826 INFO L272 TraceCheckUtils]: 2: Hoare triple {1691#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:39,826 INFO L290 TraceCheckUtils]: 3: Hoare triple {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,826 INFO L290 TraceCheckUtils]: 4: Hoare triple {1691#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1691#true} is VALID [2022-02-20 23:58:39,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1691#true} is VALID [2022-02-20 23:58:39,826 INFO L290 TraceCheckUtils]: 6: Hoare triple {1691#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1691#true} is VALID [2022-02-20 23:58:39,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {1691#true} assume true; {1691#true} is VALID [2022-02-20 23:58:39,827 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1691#true} {1691#true} #217#return; {1691#true} is VALID [2022-02-20 23:58:39,827 INFO L290 TraceCheckUtils]: 10: Hoare triple {1691#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {1691#true} assume !!(sll_circular_create_~len#1 > 1); {1691#true} is VALID [2022-02-20 23:58:39,828 INFO L272 TraceCheckUtils]: 12: Hoare triple {1691#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:39,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {1709#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1691#true} is VALID [2022-02-20 23:58:39,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {1691#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {1691#true} is VALID [2022-02-20 23:58:39,829 INFO L290 TraceCheckUtils]: 15: Hoare triple {1691#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:39,830 INFO L290 TraceCheckUtils]: 16: Hoare triple {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:39,830 INFO L290 TraceCheckUtils]: 17: Hoare triple {1710#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:39,830 INFO L290 TraceCheckUtils]: 18: Hoare triple {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:39,831 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1711#(= (select |#valid| |node_create_#res#1.base|) 1)} {1691#true} #219#return; {1707#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 1)} is VALID [2022-02-20 23:58:39,832 INFO L290 TraceCheckUtils]: 20: Hoare triple {1707#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 1)} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {1708#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) 1)} is VALID [2022-02-20 23:58:39,832 INFO L290 TraceCheckUtils]: 21: Hoare triple {1708#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) 1)} assume !(1 == #valid[sll_circular_create_~new_head~0#1.base]); {1692#false} is VALID [2022-02-20 23:58:39,832 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 23:58:39,833 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:39,833 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [278396837] [2022-02-20 23:58:39,833 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [278396837] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:39,833 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:39,833 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:58:39,833 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1348657246] [2022-02-20 23:58:39,833 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:39,834 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:39,834 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:39,834 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:39,853 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:39,854 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:58:39,854 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:39,854 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:58:39,854 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:58:39,855 INFO L87 Difference]: Start difference. First operand 126 states and 136 transitions. Second operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:40,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:40,481 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:40,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:58:40,482 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:40,482 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:40,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:40,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 138 transitions. [2022-02-20 23:58:40,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:40,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 138 transitions. [2022-02-20 23:58:40,485 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 138 transitions. [2022-02-20 23:58:40,584 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:40,585 INFO L225 Difference]: With dead ends: 126 [2022-02-20 23:58:40,586 INFO L226 Difference]: Without dead ends: 126 [2022-02-20 23:58:40,586 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:58:40,587 INFO L933 BasicCegarLoop]: 126 mSDtfsCounter, 13 mSDsluCounter, 318 mSDsCounter, 0 mSdLazyCounter, 353 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 444 SdHoareTripleChecker+Invalid, 355 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 353 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:40,587 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 444 Invalid, 355 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 353 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:58:40,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-02-20 23:58:40,590 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 125. [2022-02-20 23:58:40,590 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:40,590 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:40,591 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:40,591 INFO L87 Difference]: Start difference. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:40,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:40,594 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:40,594 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 137 transitions. [2022-02-20 23:58:40,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:40,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:40,595 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 126 states. [2022-02-20 23:58:40,595 INFO L87 Difference]: Start difference. First operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 126 states. [2022-02-20 23:58:40,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:40,598 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:40,598 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 137 transitions. [2022-02-20 23:58:40,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:40,598 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:40,598 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:40,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:40,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:40,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 135 transitions. [2022-02-20 23:58:40,601 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 135 transitions. Word has length 22 [2022-02-20 23:58:40,601 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:40,602 INFO L470 AbstractCegarLoop]: Abstraction has 125 states and 135 transitions. [2022-02-20 23:58:40,602 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:40,602 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:40,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:58:40,602 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:40,602 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:40,603 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:58:40,603 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:40,603 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:40,603 INFO L85 PathProgramCache]: Analyzing trace with hash 2102414877, now seen corresponding path program 1 times [2022-02-20 23:58:40,603 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:40,603 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [100766510] [2022-02-20 23:58:40,604 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:40,604 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:40,623 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:40,658 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:40,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:40,667 INFO L290 TraceCheckUtils]: 0: Hoare triple {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2219#true} is VALID [2022-02-20 23:58:40,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {2219#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2219#true} is VALID [2022-02-20 23:58:40,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {2219#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2219#true} is VALID [2022-02-20 23:58:40,668 INFO L290 TraceCheckUtils]: 3: Hoare triple {2219#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2219#true} is VALID [2022-02-20 23:58:40,668 INFO L290 TraceCheckUtils]: 4: Hoare triple {2219#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2219#true} is VALID [2022-02-20 23:58:40,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {2219#true} assume true; {2219#true} is VALID [2022-02-20 23:58:40,669 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2219#true} {2219#true} #217#return; {2219#true} is VALID [2022-02-20 23:58:40,669 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 23:58:40,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:40,700 INFO L290 TraceCheckUtils]: 0: Hoare triple {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,701 INFO L290 TraceCheckUtils]: 1: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,701 INFO L290 TraceCheckUtils]: 2: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,702 INFO L290 TraceCheckUtils]: 3: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,702 INFO L290 TraceCheckUtils]: 4: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:40,703 INFO L290 TraceCheckUtils]: 5: Hoare triple {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} assume true; {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:40,704 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} {2219#true} #219#return; {2235#(and (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 8))} is VALID [2022-02-20 23:58:40,704 INFO L290 TraceCheckUtils]: 0: Hoare triple {2219#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {2219#true} is VALID [2022-02-20 23:58:40,704 INFO L290 TraceCheckUtils]: 1: Hoare triple {2219#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2219#true} is VALID [2022-02-20 23:58:40,705 INFO L272 TraceCheckUtils]: 2: Hoare triple {2219#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:40,705 INFO L290 TraceCheckUtils]: 3: Hoare triple {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2219#true} is VALID [2022-02-20 23:58:40,705 INFO L290 TraceCheckUtils]: 4: Hoare triple {2219#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2219#true} is VALID [2022-02-20 23:58:40,705 INFO L290 TraceCheckUtils]: 5: Hoare triple {2219#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L290 TraceCheckUtils]: 6: Hoare triple {2219#true} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L290 TraceCheckUtils]: 7: Hoare triple {2219#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L290 TraceCheckUtils]: 8: Hoare triple {2219#true} assume true; {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2219#true} {2219#true} #217#return; {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L290 TraceCheckUtils]: 10: Hoare triple {2219#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2219#true} is VALID [2022-02-20 23:58:40,706 INFO L290 TraceCheckUtils]: 11: Hoare triple {2219#true} assume !!(sll_circular_create_~len#1 > 1); {2219#true} is VALID [2022-02-20 23:58:40,710 INFO L272 TraceCheckUtils]: 12: Hoare triple {2219#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:40,711 INFO L290 TraceCheckUtils]: 13: Hoare triple {2237#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,711 INFO L290 TraceCheckUtils]: 14: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,712 INFO L290 TraceCheckUtils]: 15: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,712 INFO L290 TraceCheckUtils]: 16: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:40,713 INFO L290 TraceCheckUtils]: 17: Hoare triple {2238#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:40,713 INFO L290 TraceCheckUtils]: 18: Hoare triple {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} assume true; {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:40,714 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2239#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} {2219#true} #219#return; {2235#(and (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 8))} is VALID [2022-02-20 23:58:40,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {2235#(and (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 8))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2236#(and (= (+ (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (- 8)) 0) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| 0))} is VALID [2022-02-20 23:58:40,715 INFO L290 TraceCheckUtils]: 21: Hoare triple {2236#(and (= (+ (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (- 8)) 0) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| 0))} assume !(4 + sll_circular_create_~new_head~0#1.offset <= #length[sll_circular_create_~new_head~0#1.base] && 0 <= sll_circular_create_~new_head~0#1.offset); {2220#false} is VALID [2022-02-20 23:58:40,715 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:40,715 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:40,716 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [100766510] [2022-02-20 23:58:40,716 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [100766510] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:40,716 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:40,716 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:58:40,716 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [79405462] [2022-02-20 23:58:40,716 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:40,717 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:40,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:40,717 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:40,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:40,732 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:58:40,732 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:40,732 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:58:40,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:58:40,732 INFO L87 Difference]: Start difference. First operand 125 states and 135 transitions. Second operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:41,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:41,424 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:41,424 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:58:41,424 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:41,424 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:41,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:41,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 137 transitions. [2022-02-20 23:58:41,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:41,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 137 transitions. [2022-02-20 23:58:41,429 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 137 transitions. [2022-02-20 23:58:41,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:41,538 INFO L225 Difference]: With dead ends: 125 [2022-02-20 23:58:41,538 INFO L226 Difference]: Without dead ends: 125 [2022-02-20 23:58:41,538 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:58:41,543 INFO L933 BasicCegarLoop]: 126 mSDtfsCounter, 11 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 324 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 468 SdHoareTripleChecker+Invalid, 325 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 324 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:41,543 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 468 Invalid, 325 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 324 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:58:41,544 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-02-20 23:58:41,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 124. [2022-02-20 23:58:41,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:41,547 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:41,547 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:41,548 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:41,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:41,550 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:41,550 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 136 transitions. [2022-02-20 23:58:41,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:41,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:41,551 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:41,551 INFO L87 Difference]: Start difference. First operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:41,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:41,554 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:41,554 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 136 transitions. [2022-02-20 23:58:41,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:41,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:41,554 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:41,554 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:41,555 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:41,556 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 134 transitions. [2022-02-20 23:58:41,557 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 134 transitions. Word has length 22 [2022-02-20 23:58:41,557 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:41,557 INFO L470 AbstractCegarLoop]: Abstraction has 124 states and 134 transitions. [2022-02-20 23:58:41,557 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:41,557 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 134 transitions. [2022-02-20 23:58:41,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:58:41,558 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:41,558 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:41,558 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:58:41,558 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:41,558 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:41,558 INFO L85 PathProgramCache]: Analyzing trace with hash -466517819, now seen corresponding path program 1 times [2022-02-20 23:58:41,559 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:41,559 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [618197122] [2022-02-20 23:58:41,559 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:41,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:41,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:41,609 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:41,614 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:41,628 INFO L290 TraceCheckUtils]: 0: Hoare triple {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2743#true} is VALID [2022-02-20 23:58:41,629 INFO L290 TraceCheckUtils]: 1: Hoare triple {2743#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2743#true} is VALID [2022-02-20 23:58:41,629 INFO L290 TraceCheckUtils]: 2: Hoare triple {2743#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:41,630 INFO L290 TraceCheckUtils]: 3: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:41,630 INFO L290 TraceCheckUtils]: 4: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:41,631 INFO L290 TraceCheckUtils]: 5: Hoare triple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:41,631 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} {2743#true} #217#return; {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} is VALID [2022-02-20 23:58:41,632 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 23:58:41,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:41,672 INFO L290 TraceCheckUtils]: 0: Hoare triple {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,672 INFO L290 TraceCheckUtils]: 1: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,673 INFO L290 TraceCheckUtils]: 3: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,686 INFO L290 TraceCheckUtils]: 4: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:41,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:41,688 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} #219#return; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,688 INFO L290 TraceCheckUtils]: 0: Hoare triple {2743#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {2743#true} is VALID [2022-02-20 23:58:41,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {2743#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2743#true} is VALID [2022-02-20 23:58:41,689 INFO L272 TraceCheckUtils]: 2: Hoare triple {2743#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:41,689 INFO L290 TraceCheckUtils]: 3: Hoare triple {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2743#true} is VALID [2022-02-20 23:58:41,689 INFO L290 TraceCheckUtils]: 4: Hoare triple {2743#true} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2743#true} is VALID [2022-02-20 23:58:41,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {2743#true} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:41,690 INFO L290 TraceCheckUtils]: 6: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:41,691 INFO L290 TraceCheckUtils]: 7: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:41,691 INFO L290 TraceCheckUtils]: 8: Hoare triple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:41,692 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} {2743#true} #217#return; {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} is VALID [2022-02-20 23:58:41,692 INFO L290 TraceCheckUtils]: 10: Hoare triple {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,693 INFO L290 TraceCheckUtils]: 11: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !!(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,693 INFO L272 TraceCheckUtils]: 12: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:41,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {2761#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,694 INFO L290 TraceCheckUtils]: 14: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,695 INFO L290 TraceCheckUtils]: 15: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,696 INFO L290 TraceCheckUtils]: 16: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:41,696 INFO L290 TraceCheckUtils]: 17: Hoare triple {2764#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:41,697 INFO L290 TraceCheckUtils]: 18: Hoare triple {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:41,698 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2765#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} #219#return; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,698 INFO L290 TraceCheckUtils]: 20: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,698 INFO L290 TraceCheckUtils]: 21: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,699 INFO L290 TraceCheckUtils]: 22: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,699 INFO L290 TraceCheckUtils]: 23: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:41,699 INFO L290 TraceCheckUtils]: 24: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(1 == #valid[sll_circular_create_~last~0#1.base]); {2744#false} is VALID [2022-02-20 23:58:41,700 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:58:41,700 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:41,700 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [618197122] [2022-02-20 23:58:41,700 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [618197122] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:58:41,700 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1551850435] [2022-02-20 23:58:41,700 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:41,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:58:41,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:58:41,712 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:58:41,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 23:58:41,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:41,799 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 23 conjunts are in the unsatisfiable core [2022-02-20 23:58:41,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:41,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:41,879 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:42,036 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:58:42,036 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 18 [2022-02-20 23:58:42,123 INFO L290 TraceCheckUtils]: 0: Hoare triple {2743#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {2743#true} is VALID [2022-02-20 23:58:42,123 INFO L290 TraceCheckUtils]: 1: Hoare triple {2743#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2743#true} is VALID [2022-02-20 23:58:42,123 INFO L272 TraceCheckUtils]: 2: Hoare triple {2743#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2743#true} is VALID [2022-02-20 23:58:42,124 INFO L290 TraceCheckUtils]: 3: Hoare triple {2743#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,124 INFO L290 TraceCheckUtils]: 4: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,125 INFO L290 TraceCheckUtils]: 5: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,125 INFO L290 TraceCheckUtils]: 6: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:42,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:42,127 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} {2743#true} #217#return; {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} is VALID [2022-02-20 23:58:42,127 INFO L290 TraceCheckUtils]: 10: Hoare triple {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,127 INFO L290 TraceCheckUtils]: 11: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !!(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,128 INFO L272 TraceCheckUtils]: 12: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2805#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:58:42,129 INFO L290 TraceCheckUtils]: 13: Hoare triple {2805#(= |old(#valid)| |#valid|)} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} is VALID [2022-02-20 23:58:42,129 INFO L290 TraceCheckUtils]: 14: Hoare triple {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} is VALID [2022-02-20 23:58:42,130 INFO L290 TraceCheckUtils]: 15: Hoare triple {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} is VALID [2022-02-20 23:58:42,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} is VALID [2022-02-20 23:58:42,131 INFO L290 TraceCheckUtils]: 17: Hoare triple {2809#(exists ((v_ArrVal_256 Int)) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_256) |#valid|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2822#(exists ((v_ArrVal_256 Int)) (= |#valid| (store |old(#valid)| |node_create_#res#1.base| v_ArrVal_256)))} is VALID [2022-02-20 23:58:42,131 INFO L290 TraceCheckUtils]: 18: Hoare triple {2822#(exists ((v_ArrVal_256 Int)) (= |#valid| (store |old(#valid)| |node_create_#res#1.base| v_ArrVal_256)))} assume true; {2822#(exists ((v_ArrVal_256 Int)) (= |#valid| (store |old(#valid)| |node_create_#res#1.base| v_ArrVal_256)))} is VALID [2022-02-20 23:58:42,133 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2822#(exists ((v_ArrVal_256 Int)) (= |#valid| (store |old(#valid)| |node_create_#res#1.base| v_ArrVal_256)))} {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} #219#return; {2829#(or (= |ULTIMATE.start_sll_circular_create_~last~0#1.base| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} is VALID [2022-02-20 23:58:42,134 INFO L290 TraceCheckUtils]: 20: Hoare triple {2829#(or (= |ULTIMATE.start_sll_circular_create_~last~0#1.base| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2833#(or (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.base| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} is VALID [2022-02-20 23:58:42,134 INFO L290 TraceCheckUtils]: 21: Hoare triple {2833#(or (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.base| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,135 INFO L290 TraceCheckUtils]: 22: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,135 INFO L290 TraceCheckUtils]: 23: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,135 INFO L290 TraceCheckUtils]: 24: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(1 == #valid[sll_circular_create_~last~0#1.base]); {2744#false} is VALID [2022-02-20 23:58:42,136 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:42,136 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:58:42,575 INFO L290 TraceCheckUtils]: 24: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(1 == #valid[sll_circular_create_~last~0#1.base]); {2744#false} is VALID [2022-02-20 23:58:42,576 INFO L290 TraceCheckUtils]: 23: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,576 INFO L290 TraceCheckUtils]: 22: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,576 INFO L290 TraceCheckUtils]: 21: Hoare triple {2855#(or (not (= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) 1)) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,577 INFO L290 TraceCheckUtils]: 20: Hoare triple {2859#(or (not (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 1)) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2855#(or (not (= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) 1)) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} is VALID [2022-02-20 23:58:42,578 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2866#(or (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))) (not (= (select |#valid| |node_create_#res#1.base|) 1)))} {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} #219#return; {2859#(or (not (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) 1)) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1))} is VALID [2022-02-20 23:58:42,578 INFO L290 TraceCheckUtils]: 18: Hoare triple {2866#(or (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))) (not (= (select |#valid| |node_create_#res#1.base|) 1)))} assume true; {2866#(or (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))) (not (= (select |#valid| |node_create_#res#1.base|) 1)))} is VALID [2022-02-20 23:58:42,579 INFO L290 TraceCheckUtils]: 17: Hoare triple {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2866#(or (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))) (not (= (select |#valid| |node_create_#res#1.base|) 1)))} is VALID [2022-02-20 23:58:42,579 INFO L290 TraceCheckUtils]: 16: Hoare triple {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} is VALID [2022-02-20 23:58:42,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} is VALID [2022-02-20 23:58:42,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} is VALID [2022-02-20 23:58:42,581 INFO L290 TraceCheckUtils]: 13: Hoare triple {2886#(forall ((|v_node_create_~temp~0#1.base_14| Int) (|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select (store |#valid| |v_node_create_~temp~0#1.base_14| 1) |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2873#(or (not (= 1 (select |#valid| |node_create_~temp~0#1.base|))) (forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1)))))} is VALID [2022-02-20 23:58:42,582 INFO L272 TraceCheckUtils]: 12: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2886#(forall ((|v_node_create_~temp~0#1.base_14| Int) (|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| Int)) (or (= (select (store |#valid| |v_node_create_~temp~0#1.base_14| 1) |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) 1))))} is VALID [2022-02-20 23:58:42,582 INFO L290 TraceCheckUtils]: 11: Hoare triple {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} assume !!(sll_circular_create_~len#1 > 1); {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,582 INFO L290 TraceCheckUtils]: 10: Hoare triple {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2753#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1)} is VALID [2022-02-20 23:58:42,583 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} {2743#true} #217#return; {2752#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1)} is VALID [2022-02-20 23:58:42,583 INFO L290 TraceCheckUtils]: 8: Hoare triple {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} assume true; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:42,584 INFO L290 TraceCheckUtils]: 7: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2763#(= (select |#valid| |node_create_#res#1.base|) 1)} is VALID [2022-02-20 23:58:42,584 INFO L290 TraceCheckUtils]: 6: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,585 INFO L290 TraceCheckUtils]: 5: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,587 INFO L290 TraceCheckUtils]: 4: Hoare triple {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,588 INFO L290 TraceCheckUtils]: 3: Hoare triple {2743#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2762#(= 1 (select |#valid| |node_create_~temp~0#1.base|))} is VALID [2022-02-20 23:58:42,588 INFO L272 TraceCheckUtils]: 2: Hoare triple {2743#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2743#true} is VALID [2022-02-20 23:58:42,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {2743#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2743#true} is VALID [2022-02-20 23:58:42,588 INFO L290 TraceCheckUtils]: 0: Hoare triple {2743#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {2743#true} is VALID [2022-02-20 23:58:42,588 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:42,588 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1551850435] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:58:42,589 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:58:42,589 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 10, 10] total 18 [2022-02-20 23:58:42,589 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1850354462] [2022-02-20 23:58:42,589 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:58:42,589 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 25 [2022-02-20 23:58:42,590 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:42,590 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:58:42,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:42,628 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-02-20 23:58:42,628 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:42,628 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-02-20 23:58:42,628 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=276, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:58:42,629 INFO L87 Difference]: Start difference. First operand 124 states and 134 transitions. Second operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:58:43,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:43,590 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:58:43,590 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:58:43,591 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 25 [2022-02-20 23:58:43,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:43,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:58:43,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 133 transitions. [2022-02-20 23:58:43,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:58:43,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 133 transitions. [2022-02-20 23:58:43,594 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 133 transitions. [2022-02-20 23:58:43,695 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:43,697 INFO L225 Difference]: With dead ends: 123 [2022-02-20 23:58:43,697 INFO L226 Difference]: Without dead ends: 123 [2022-02-20 23:58:43,697 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 41 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=87, Invalid=333, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:58:43,697 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 26 mSDsluCounter, 715 mSDsCounter, 0 mSdLazyCounter, 475 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 836 SdHoareTripleChecker+Invalid, 656 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 475 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 175 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:43,698 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 836 Invalid, 656 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 475 Invalid, 0 Unknown, 175 Unchecked, 0.3s Time] [2022-02-20 23:58:43,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2022-02-20 23:58:43,700 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 123. [2022-02-20 23:58:43,700 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:43,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:43,701 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:43,701 INFO L87 Difference]: Start difference. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:43,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:43,703 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:58:43,703 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:58:43,704 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:43,704 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:43,704 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 123 states. [2022-02-20 23:58:43,705 INFO L87 Difference]: Start difference. First operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 123 states. [2022-02-20 23:58:43,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:43,707 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:58:43,707 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:58:43,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:43,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:43,707 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:43,707 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:43,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:43,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 133 transitions. [2022-02-20 23:58:43,710 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 133 transitions. Word has length 25 [2022-02-20 23:58:43,710 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:43,710 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 133 transitions. [2022-02-20 23:58:43,710 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 13 states have internal predecessors, (40), 2 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:58:43,710 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:58:43,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:58:43,711 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:43,711 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:43,731 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 23:58:43,925 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2022-02-20 23:58:43,925 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:43,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:43,926 INFO L85 PathProgramCache]: Analyzing trace with hash -466517818, now seen corresponding path program 1 times [2022-02-20 23:58:43,926 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:43,926 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1198259408] [2022-02-20 23:58:43,926 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:43,926 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:43,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:43,984 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:43,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:44,017 INFO L290 TraceCheckUtils]: 0: Hoare triple {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,018 INFO L290 TraceCheckUtils]: 1: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,019 INFO L290 TraceCheckUtils]: 3: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,020 INFO L290 TraceCheckUtils]: 4: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:44,020 INFO L290 TraceCheckUtils]: 5: Hoare triple {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} assume true; {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:44,021 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} {3419#true} #217#return; {3428#(and (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 8) (= |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset| 0))} is VALID [2022-02-20 23:58:44,021 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 23:58:44,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:44,063 INFO L290 TraceCheckUtils]: 0: Hoare triple {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,068 INFO L290 TraceCheckUtils]: 3: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,069 INFO L290 TraceCheckUtils]: 4: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} is VALID [2022-02-20 23:58:44,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} assume true; {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} is VALID [2022-02-20 23:58:44,071 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} #219#return; {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,071 INFO L290 TraceCheckUtils]: 0: Hoare triple {3419#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {3419#true} is VALID [2022-02-20 23:58:44,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {3419#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {3419#true} is VALID [2022-02-20 23:58:44,072 INFO L272 TraceCheckUtils]: 2: Hoare triple {3419#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:44,072 INFO L290 TraceCheckUtils]: 3: Hoare triple {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,073 INFO L290 TraceCheckUtils]: 4: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,073 INFO L290 TraceCheckUtils]: 5: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,074 INFO L290 TraceCheckUtils]: 6: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,074 INFO L290 TraceCheckUtils]: 7: Hoare triple {3438#(and (= |node_create_~temp~0#1.offset| 0) (= (select |#length| |node_create_~temp~0#1.base|) 8))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:44,075 INFO L290 TraceCheckUtils]: 8: Hoare triple {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} assume true; {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} is VALID [2022-02-20 23:58:44,075 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3439#(and (= (select |#length| |node_create_#res#1.base|) 8) (= 0 |node_create_#res#1.offset|))} {3419#true} #217#return; {3428#(and (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 8) (= |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset| 0))} is VALID [2022-02-20 23:58:44,076 INFO L290 TraceCheckUtils]: 10: Hoare triple {3428#(and (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 8) (= |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset| 0))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,076 INFO L290 TraceCheckUtils]: 11: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} assume !!(sll_circular_create_~len#1 > 1); {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,077 INFO L272 TraceCheckUtils]: 12: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:44,078 INFO L290 TraceCheckUtils]: 13: Hoare triple {3437#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,078 INFO L290 TraceCheckUtils]: 14: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,079 INFO L290 TraceCheckUtils]: 15: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,079 INFO L290 TraceCheckUtils]: 16: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} is VALID [2022-02-20 23:58:44,080 INFO L290 TraceCheckUtils]: 17: Hoare triple {3440#(and (= (select |#length| |node_create_~temp~0#1.base|) 8) (= (store |old(#length)| |node_create_~temp~0#1.base| (select |#length| |node_create_~temp~0#1.base|)) |#length|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} is VALID [2022-02-20 23:58:44,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} assume true; {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} is VALID [2022-02-20 23:58:44,082 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3441#(and (= |#length| (store |old(#length)| (@diff |old(#length)| |#length|) (select |#length| (@diff |old(#length)| |#length|)))) (or (= |old(#length)| |#length|) (= (select |#length| (@diff |old(#length)| |#length|)) 8)))} {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} #219#return; {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,083 INFO L290 TraceCheckUtils]: 21: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,083 INFO L290 TraceCheckUtils]: 22: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,084 INFO L290 TraceCheckUtils]: 23: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} assume !(sll_circular_create_~len#1 > 1); {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} is VALID [2022-02-20 23:58:44,084 INFO L290 TraceCheckUtils]: 24: Hoare triple {3429#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 8))} assume !(4 + sll_circular_create_~last~0#1.offset <= #length[sll_circular_create_~last~0#1.base] && 0 <= sll_circular_create_~last~0#1.offset); {3420#false} is VALID [2022-02-20 23:58:44,085 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:58:44,085 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:44,085 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1198259408] [2022-02-20 23:58:44,085 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1198259408] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:58:44,085 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [170666262] [2022-02-20 23:58:44,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:44,085 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:58:44,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:58:44,100 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:58:44,101 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 23:58:44,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:44,183 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 35 conjunts are in the unsatisfiable core [2022-02-20 23:58:44,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:44,197 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:44,211 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:44,536 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:58:44,536 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:58:44,545 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:58:44,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {3419#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {3419#true} is VALID [2022-02-20 23:58:44,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {3419#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {3419#true} is VALID [2022-02-20 23:58:44,625 INFO L272 TraceCheckUtils]: 2: Hoare triple {3419#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {3419#true} is VALID [2022-02-20 23:58:44,626 INFO L290 TraceCheckUtils]: 3: Hoare triple {3419#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} is VALID [2022-02-20 23:58:44,626 INFO L290 TraceCheckUtils]: 4: Hoare triple {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} is VALID [2022-02-20 23:58:44,627 INFO L290 TraceCheckUtils]: 5: Hoare triple {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} is VALID [2022-02-20 23:58:44,627 INFO L290 TraceCheckUtils]: 6: Hoare triple {3454#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3464#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|) (<= (+ |node_create_~temp~0#1.offset| 8) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:44,628 INFO L290 TraceCheckUtils]: 7: Hoare triple {3464#(and (= 1 (select |#valid| |node_create_~temp~0#1.base|)) (<= 0 |node_create_~temp~0#1.offset|) (<= (+ |node_create_~temp~0#1.offset| 8) (select |#length| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3468#(and (<= 0 |node_create_#res#1.offset|) (<= (+ 8 |node_create_#res#1.offset|) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) 1))} is VALID [2022-02-20 23:58:44,628 INFO L290 TraceCheckUtils]: 8: Hoare triple {3468#(and (<= 0 |node_create_#res#1.offset|) (<= (+ 8 |node_create_#res#1.offset|) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) 1))} assume true; {3468#(and (<= 0 |node_create_#res#1.offset|) (<= (+ 8 |node_create_#res#1.offset|) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) 1))} is VALID [2022-02-20 23:58:44,629 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3468#(and (<= 0 |node_create_#res#1.offset|) (<= (+ 8 |node_create_#res#1.offset|) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) 1))} {3419#true} #217#return; {3475#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1) (<= 0 |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)))} is VALID [2022-02-20 23:58:44,630 INFO L290 TraceCheckUtils]: 10: Hoare triple {3475#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) 1) (<= 0 |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {3479#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,630 INFO L290 TraceCheckUtils]: 11: Hoare triple {3479#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !!(sll_circular_create_~len#1 > 1); {3479#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,631 INFO L272 TraceCheckUtils]: 12: Hoare triple {3479#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {3486#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:44,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {3486#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:44,632 INFO L290 TraceCheckUtils]: 14: Hoare triple {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:44,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:44,634 INFO L290 TraceCheckUtils]: 16: Hoare triple {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:44,635 INFO L290 TraceCheckUtils]: 17: Hoare triple {3490#(and (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_362))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3503#(and (= (select |old(#valid)| |node_create_#res#1.base|) 0) (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_#res#1.base| v_ArrVal_362))))} is VALID [2022-02-20 23:58:44,637 INFO L290 TraceCheckUtils]: 18: Hoare triple {3503#(and (= (select |old(#valid)| |node_create_#res#1.base|) 0) (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_#res#1.base| v_ArrVal_362))))} assume true; {3503#(and (= (select |old(#valid)| |node_create_#res#1.base|) 0) (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_#res#1.base| v_ArrVal_362))))} is VALID [2022-02-20 23:58:44,640 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3503#(and (= (select |old(#valid)| |node_create_#res#1.base|) 0) (exists ((v_ArrVal_362 Int)) (= |#length| (store |old(#length)| |node_create_#res#1.base| v_ArrVal_362))))} {3479#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (= (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|) 1) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} #219#return; {3510#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (not (= |ULTIMATE.start_sll_circular_create_~last~0#1.base| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,641 INFO L290 TraceCheckUtils]: 20: Hoare triple {3510#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (not (= |ULTIMATE.start_sll_circular_create_~last~0#1.base| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,642 INFO L290 TraceCheckUtils]: 21: Hoare triple {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,643 INFO L290 TraceCheckUtils]: 22: Hoare triple {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,643 INFO L290 TraceCheckUtils]: 23: Hoare triple {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !(sll_circular_create_~len#1 > 1); {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:58:44,644 INFO L290 TraceCheckUtils]: 24: Hoare triple {3514#(and (<= 0 |ULTIMATE.start_sll_circular_create_~last~0#1.offset|) (<= (+ |ULTIMATE.start_sll_circular_create_~last~0#1.offset| 8) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !(4 + sll_circular_create_~last~0#1.offset <= #length[sll_circular_create_~last~0#1.base] && 0 <= sll_circular_create_~last~0#1.offset); {3420#false} is VALID [2022-02-20 23:58:44,644 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:44,644 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:58:44,832 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [170666262] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:58:44,832 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:58:44,832 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 11] total 18 [2022-02-20 23:58:44,832 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [456613480] [2022-02-20 23:58:44,833 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:58:44,833 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 25 [2022-02-20 23:58:44,833 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:44,833 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:58:44,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:44,871 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-02-20 23:58:44,871 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:58:44,872 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-02-20 23:58:44,872 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=368, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:58:44,872 INFO L87 Difference]: Start difference. First operand 123 states and 133 transitions. Second operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:58:46,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:46,464 INFO L93 Difference]: Finished difference Result 124 states and 135 transitions. [2022-02-20 23:58:46,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:58:46,464 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 25 [2022-02-20 23:58:46,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:46,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:58:46,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-02-20 23:58:46,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:58:46,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-02-20 23:58:46,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 136 transitions. [2022-02-20 23:58:46,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:46,561 INFO L225 Difference]: With dead ends: 124 [2022-02-20 23:58:46,561 INFO L226 Difference]: Without dead ends: 124 [2022-02-20 23:58:46,562 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 20 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=89, Invalid=561, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:58:46,563 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 22 mSDsluCounter, 962 mSDsCounter, 0 mSdLazyCounter, 802 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 1082 SdHoareTripleChecker+Invalid, 931 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 802 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 120 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:46,563 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 1082 Invalid, 931 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 802 Invalid, 0 Unknown, 120 Unchecked, 0.5s Time] [2022-02-20 23:58:46,563 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 124 states. [2022-02-20 23:58:46,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 124 to 122. [2022-02-20 23:58:46,565 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:46,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 124 states. Second operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:46,566 INFO L74 IsIncluded]: Start isIncluded. First operand 124 states. Second operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:46,566 INFO L87 Difference]: Start difference. First operand 124 states. Second operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:46,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:46,568 INFO L93 Difference]: Finished difference Result 124 states and 135 transitions. [2022-02-20 23:58:46,569 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 135 transitions. [2022-02-20 23:58:46,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:46,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:46,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 124 states. [2022-02-20 23:58:46,571 INFO L87 Difference]: Start difference. First operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 124 states. [2022-02-20 23:58:46,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:46,573 INFO L93 Difference]: Finished difference Result 124 states and 135 transitions. [2022-02-20 23:58:46,573 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 135 transitions. [2022-02-20 23:58:46,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:46,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:46,574 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:46,574 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:46,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 122 states, 68 states have (on average 1.8529411764705883) internal successors, (126), 117 states have internal predecessors, (126), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:46,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 132 transitions. [2022-02-20 23:58:46,576 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 132 transitions. Word has length 25 [2022-02-20 23:58:46,576 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:46,576 INFO L470 AbstractCegarLoop]: Abstraction has 122 states and 132 transitions. [2022-02-20 23:58:46,576 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 14 states have internal predecessors, (40), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:58:46,576 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 132 transitions. [2022-02-20 23:58:46,577 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 23:58:46,577 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:46,577 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:46,594 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:46,793 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable6 [2022-02-20 23:58:46,793 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:46,793 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:46,793 INFO L85 PathProgramCache]: Analyzing trace with hash -342690401, now seen corresponding path program 1 times [2022-02-20 23:58:46,794 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:58:46,794 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1911670440] [2022-02-20 23:58:46,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:46,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:58:46,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:46,916 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 23:58:46,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:46,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:46,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:46,976 INFO L290 TraceCheckUtils]: 2: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:46,976 INFO L290 TraceCheckUtils]: 3: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:46,977 INFO L290 TraceCheckUtils]: 4: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:46,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:46,979 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} #217#return; {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} is VALID [2022-02-20 23:58:46,980 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 23:58:46,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:47,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,017 INFO L290 TraceCheckUtils]: 3: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,018 INFO L290 TraceCheckUtils]: 4: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,018 INFO L290 TraceCheckUtils]: 5: Hoare triple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,020 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} #219#return; {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,020 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-02-20 23:58:47,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:47,089 INFO L290 TraceCheckUtils]: 0: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,091 INFO L290 TraceCheckUtils]: 3: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,092 INFO L290 TraceCheckUtils]: 4: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,093 INFO L290 TraceCheckUtils]: 5: Hoare triple {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,094 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} #221#return; {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} is VALID [2022-02-20 23:58:47,094 INFO L290 TraceCheckUtils]: 0: Hoare triple {4050#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(23, 2); {4050#true} is VALID [2022-02-20 23:58:47,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {4050#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2;main_~data~0#1 := 1;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} is VALID [2022-02-20 23:58:47,096 INFO L272 TraceCheckUtils]: 2: Hoare triple {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:47,097 INFO L290 TraceCheckUtils]: 3: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,097 INFO L290 TraceCheckUtils]: 4: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,098 INFO L290 TraceCheckUtils]: 6: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,099 INFO L290 TraceCheckUtils]: 7: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,100 INFO L290 TraceCheckUtils]: 8: Hoare triple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,102 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} #217#return; {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} is VALID [2022-02-20 23:58:47,102 INFO L290 TraceCheckUtils]: 10: Hoare triple {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} is VALID [2022-02-20 23:58:47,102 INFO L290 TraceCheckUtils]: 11: Hoare triple {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} assume !!(sll_circular_create_~len#1 > 1); {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} is VALID [2022-02-20 23:58:47,103 INFO L272 TraceCheckUtils]: 12: Hoare triple {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:47,104 INFO L290 TraceCheckUtils]: 13: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,105 INFO L290 TraceCheckUtils]: 14: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,105 INFO L290 TraceCheckUtils]: 15: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,106 INFO L290 TraceCheckUtils]: 16: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:58:47,107 INFO L290 TraceCheckUtils]: 17: Hoare triple {4077#(and (<= (+ |node_create_~temp~0#1.base| 1) |#StackHeapBarrier|) (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,107 INFO L290 TraceCheckUtils]: 18: Hoare triple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,109 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4078#(and (or (<= (+ (@diff |old(#valid)| |#valid|) 1) |#StackHeapBarrier|) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4052#(and (= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#s~0#1.base|))} #219#return; {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4); srcloc: L588 {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,110 INFO L290 TraceCheckUtils]: 22: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := sll_circular_create_#t~post6#1 - 1;havoc sll_circular_create_#t~post6#1; {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,110 INFO L290 TraceCheckUtils]: 23: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} assume !(sll_circular_create_~len#1 > 1); {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,111 INFO L290 TraceCheckUtils]: 24: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4); srcloc: L586-3 {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,111 INFO L290 TraceCheckUtils]: 25: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} is VALID [2022-02-20 23:58:47,112 INFO L290 TraceCheckUtils]: 26: Hoare triple {4067#(= (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|) 1)} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} is VALID [2022-02-20 23:58:47,113 INFO L272 TraceCheckUtils]: 27: Hoare triple {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 23:58:47,113 INFO L290 TraceCheckUtils]: 28: Hoare triple {4076#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,114 INFO L290 TraceCheckUtils]: 29: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} assume !(0 == ~temp~0#1.base && 0 == ~temp~0#1.offset); {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,114 INFO L290 TraceCheckUtils]: 30: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, ~temp~0#1.base, ~temp~0#1.offset, 4); srcloc: L576-1 {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,115 INFO L290 TraceCheckUtils]: 31: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} SUMMARY for call write~int(~data#1, ~temp~0#1.base, 4 + ~temp~0#1.offset, 4); srcloc: L579 {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:47,116 INFO L290 TraceCheckUtils]: 32: Hoare triple {4079#(and (= |#valid| (store |old(#valid)| |node_create_~temp~0#1.base| (select |#valid| |node_create_~temp~0#1.base|))) (= 0 (select |old(#valid)| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,116 INFO L290 TraceCheckUtils]: 33: Hoare triple {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} assume true; {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} is VALID [2022-02-20 23:58:47,118 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {4080#(and (or (= (select |old(#valid)| (@diff |old(#valid)| |#valid|)) 0) (= |old(#valid)| |#valid|)) (= (store |old(#valid)| (@diff |old(#valid)| |#valid|) (select |#valid| (@diff |old(#valid)| |#valid|))) |#valid|))} {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} #221#return; {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} is VALID [2022-02-20 23:58:47,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} is VALID [2022-02-20 23:58:47,121 INFO L290 TraceCheckUtils]: 36: Hoare triple {4068#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|) 1)} assume !(1 == #valid[sll_circular_append_~head#1.base]); {4051#false} is VALID [2022-02-20 23:58:47,122 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 13 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-20 23:58:47,122 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:58:47,122 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1911670440] [2022-02-20 23:58:47,122 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1911670440] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:58:47,122 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2063506872] [2022-02-20 23:58:47,122 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:47,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:58:47,123 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:58:47,124 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:58:47,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-20 23:58:47,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:47,290 INFO L263 TraceCheckSpWp]: Trace formula consists of 329 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 23:58:47,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:47,307 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:47,317 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:47,353 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:58:47,585 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:58:47,812 WARN L325 FreeRefinementEngine]: Global settings require throwing the following exception [2022-02-20 23:58:47,833 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:48,031 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:58:48,032 FATAL L? ?]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: line 189201 column 46: unknown constant v_#valid_BEFORE_CALL_13 at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1458) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:658) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:383) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:239) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseSuccess(Executor.java:258) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.assertTerm(Scriptor.java:147) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.arrays.DiffWrapperScript$DiffTransformer.checkOrAddAxiom(DiffWrapperScript.java:161) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.arrays.DiffWrapperScript$DiffTransformer.convertApplicationTerm(DiffWrapperScript.java:171) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer$BuildApplicationTerm.walk(TermTransformer.java:352) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:115) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:106) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.transform(TermTransformer.java:285) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.arrays.DiffWrapperScript.assertTerm(DiffWrapperScript.java:109) at de.uni_freiburg.informatik.ultimate.logic.WrapperScript.assertTerm(WrapperScript.java:158) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.ManagedScript.assertTerm(ManagedScript.java:134) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.MonolithicImplicationChecker.checkImplication(MonolithicImplicationChecker.java:83) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier$PredicateComparison.compare(PredicateUnifier.java:829) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier$PredicateComparison.(PredicateUnifier.java:773) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:345) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:305) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp$UnifyPostprocessor.postprocess(TraceCheckSpWp.java:582) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:199) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:299) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:185) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:163) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:108) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getInterpolantComputationStatus(IpTcStrategyModuleBase.java:76) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.tryExecuteInterpolantGenerator(AutomatonFreeRefinementEngine.java:273) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.generateProof(AutomatonFreeRefinementEngine.java:155) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:145) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:93) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:79) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:610) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:413) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:330) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:414) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:304) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:264) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:177) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 23:58:48,036 INFO L158 Benchmark]: Toolchain (without parser) took 11122.61ms. Allocated memory was 92.3MB in the beginning and 176.2MB in the end (delta: 83.9MB). Free memory was 63.0MB in the beginning and 121.9MB in the end (delta: -58.9MB). Peak memory consumption was 23.6MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,037 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 92.3MB. Free memory is still 49.4MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:58:48,037 INFO L158 Benchmark]: CACSL2BoogieTranslator took 387.51ms. Allocated memory was 92.3MB in the beginning and 121.6MB in the end (delta: 29.4MB). Free memory was 62.8MB in the beginning and 87.6MB in the end (delta: -24.8MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,037 INFO L158 Benchmark]: Boogie Procedure Inliner took 41.10ms. Allocated memory is still 121.6MB. Free memory was 87.6MB in the beginning and 85.0MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,037 INFO L158 Benchmark]: Boogie Preprocessor took 61.62ms. Allocated memory is still 121.6MB. Free memory was 85.0MB in the beginning and 82.7MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,037 INFO L158 Benchmark]: RCFGBuilder took 602.77ms. Allocated memory is still 121.6MB. Free memory was 82.7MB in the beginning and 88.0MB in the end (delta: -5.3MB). Peak memory consumption was 26.2MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,038 INFO L158 Benchmark]: TraceAbstraction took 10016.04ms. Allocated memory was 121.6MB in the beginning and 176.2MB in the end (delta: 54.5MB). Free memory was 87.2MB in the beginning and 121.9MB in the end (delta: -34.8MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2022-02-20 23:58:48,039 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 92.3MB. Free memory is still 49.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 387.51ms. Allocated memory was 92.3MB in the beginning and 121.6MB in the end (delta: 29.4MB). Free memory was 62.8MB in the beginning and 87.6MB in the end (delta: -24.8MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 41.10ms. Allocated memory is still 121.6MB. Free memory was 87.6MB in the beginning and 85.0MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 61.62ms. Allocated memory is still 121.6MB. Free memory was 85.0MB in the beginning and 82.7MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 602.77ms. Allocated memory is still 121.6MB. Free memory was 82.7MB in the beginning and 88.0MB in the end (delta: -5.3MB). Peak memory consumption was 26.2MB. Max. memory is 16.1GB. * TraceAbstraction took 10016.04ms. Allocated memory was 121.6MB in the beginning and 176.2MB in the end (delta: 54.5MB). Free memory was 87.2MB in the beginning and 121.9MB in the end (delta: -34.8MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: SMTLIBException: line 189201 column 46: unknown constant v_#valid_BEFORE_CALL_13 de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: line 189201 column 46: unknown constant v_#valid_BEFORE_CALL_13: de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1458) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 23:58:48,053 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 1 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -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/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-simple/sll2c_append_unequal.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d83e632829c1e193271bd76b90e08187eb94c70000e5f11d7aea101b3ec9a9e6 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:58:49,689 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:58:49,691 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:58:49,725 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:58:49,725 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:58:49,728 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:58:49,729 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:58:49,733 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:58:49,735 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:58:49,739 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:58:49,741 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:58:49,744 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:58:49,744 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:58:49,746 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:58:49,747 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:58:49,748 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:58:49,750 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:58:49,751 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:58:49,752 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:58:49,754 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:58:49,757 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:58:49,758 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:58:49,758 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:58:49,759 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:58:49,761 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:58:49,762 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:58:49,763 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:58:49,764 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:58:49,764 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:58:49,765 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:58:49,765 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:58:49,765 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:58:49,766 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:58:49,767 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:58:49,768 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:58:49,768 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:58:49,768 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:58:49,768 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:58:49,769 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:58:49,770 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:58:49,770 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:58:49,773 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf [2022-02-20 23:58:49,793 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:58:49,793 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:58:49,794 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:58:49,794 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:58:49,794 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:58:49,794 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:58:49,795 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:58:49,795 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:58:49,796 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:58:49,796 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:58:49,796 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:58:49,796 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:58:49,797 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:58:49,798 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:58:49,798 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:58:49,799 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:58:49,799 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:58:49,799 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:58:49,799 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:58:49,799 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:58:49,799 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:58:49,800 INFO L138 SettingsManager]: * Logic for external solver=AUFBV 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.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> d83e632829c1e193271bd76b90e08187eb94c70000e5f11d7aea101b3ec9a9e6 [2022-02-20 23:58:50,062 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:58:50,075 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:58:50,077 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:58:50,078 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:58:50,078 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:58:50,079 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-simple/sll2c_append_unequal.i [2022-02-20 23:58:50,114 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/34a42f0bf/f29afb2f58ba48368def97e55a84dc72/FLAG61e48f682 [2022-02-20 23:58:50,505 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:58:50,508 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i [2022-02-20 23:58:50,517 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/34a42f0bf/f29afb2f58ba48368def97e55a84dc72/FLAG61e48f682 [2022-02-20 23:58:50,899 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/34a42f0bf/f29afb2f58ba48368def97e55a84dc72 [2022-02-20 23:58:50,901 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:58:50,904 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:58:50,905 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:58:50,905 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:58:50,907 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:58:50,908 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:58:50" (1/1) ... [2022-02-20 23:58:50,909 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@42711656 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:50, skipping insertion in model container [2022-02-20 23:58:50,909 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:58:50" (1/1) ... [2022-02-20 23:58:50,913 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:58:50,950 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:58:51,194 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i[24587,24600] [2022-02-20 23:58:51,196 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:58:51,204 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:58:51,235 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-simple/sll2c_append_unequal.i[24587,24600] [2022-02-20 23:58:51,236 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:58:51,257 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:58:51,257 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51 WrapperNode [2022-02-20 23:58:51,257 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:58:51,258 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:58:51,258 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:58:51,259 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:58:51,263 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,278 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,299 INFO L137 Inliner]: procedures = 130, calls = 46, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 165 [2022-02-20 23:58:51,300 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:58:51,300 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:58:51,300 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:58:51,301 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:58:51,305 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,305 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,308 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,308 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,327 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,332 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,337 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,350 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:58:51,351 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:58:51,351 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:58:51,351 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:58:51,352 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (1/1) ... [2022-02-20 23:58:51,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:58:51,370 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:58:51,379 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 23:58:51,383 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 23:58:51,439 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure node_create [2022-02-20 23:58:51,440 INFO L138 BoogieDeclarations]: Found implementation of procedure node_create [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:58:51,440 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:58:51,441 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:58:51,441 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:58:51,441 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:58:51,441 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:58:51,519 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:58:51,520 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:58:51,999 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:58:52,006 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:58:52,006 INFO L299 CfgBuilder]: Removed 5 assume(true) statements. [2022-02-20 23:58:52,008 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:58:52 BoogieIcfgContainer [2022-02-20 23:58:52,023 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:58:52,024 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:58:52,024 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:58:52,026 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:58:52,027 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:58:50" (1/3) ... [2022-02-20 23:58:52,027 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@cbd39b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:58:52, skipping insertion in model container [2022-02-20 23:58:52,027 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:58:51" (2/3) ... [2022-02-20 23:58:52,028 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@cbd39b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:58:52, skipping insertion in model container [2022-02-20 23:58:52,028 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:58:52" (3/3) ... [2022-02-20 23:58:52,029 INFO L111 eAbstractionObserver]: Analyzing ICFG sll2c_append_unequal.i [2022-02-20 23:58:52,032 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:58:52,033 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 58 error locations. [2022-02-20 23:58:52,072 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:58:52,079 INFO L339 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=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 23:58:52,079 INFO L340 AbstractCegarLoop]: Starting to check reachability of 58 error locations. [2022-02-20 23:58:52,098 INFO L276 IsEmpty]: Start isEmpty. Operand has 132 states, 69 states have (on average 2.072463768115942) internal successors, (143), 127 states have internal predecessors, (143), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:52,102 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:58:52,102 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:52,103 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:58:52,103 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting node_createErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:52,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:52,107 INFO L85 PathProgramCache]: Analyzing trace with hash 895983381, now seen corresponding path program 1 times [2022-02-20 23:58:52,115 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:52,115 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1424140189] [2022-02-20 23:58:52,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:52,116 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:52,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:52,118 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:52,119 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 23:58:52,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:52,192 INFO L263 TraceCheckSpWp]: Trace formula consists of 50 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:58:52,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:52,203 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:52,253 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:52,268 INFO L290 TraceCheckUtils]: 0: Hoare triple {135#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {135#true} is VALID [2022-02-20 23:58:52,268 INFO L290 TraceCheckUtils]: 1: Hoare triple {135#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {135#true} is VALID [2022-02-20 23:58:52,268 INFO L272 TraceCheckUtils]: 2: Hoare triple {135#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {135#true} is VALID [2022-02-20 23:58:52,270 INFO L290 TraceCheckUtils]: 3: Hoare triple {135#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {149#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:52,270 INFO L290 TraceCheckUtils]: 4: Hoare triple {149#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {149#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:52,270 INFO L290 TraceCheckUtils]: 5: Hoare triple {149#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[~temp~0#1.base]); {136#false} is VALID [2022-02-20 23:58:52,271 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:52,271 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:58:52,272 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:52,272 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1424140189] [2022-02-20 23:58:52,272 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1424140189] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:52,272 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:52,273 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:58:52,274 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1809878638] [2022-02-20 23:58:52,274 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:52,277 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:52,278 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:52,280 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:52,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:52,287 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:58:52,287 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:52,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:58:52,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:52,302 INFO L87 Difference]: Start difference. First operand has 132 states, 69 states have (on average 2.072463768115942) internal successors, (143), 127 states have internal predecessors, (143), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:52,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:52,701 INFO L93 Difference]: Finished difference Result 130 states and 141 transitions. [2022-02-20 23:58:52,701 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:58:52,701 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:52,701 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:52,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:52,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:58:52,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:52,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:58:52,711 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 149 transitions. [2022-02-20 23:58:52,847 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:52,855 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:58:52,856 INFO L226 Difference]: Without dead ends: 127 [2022-02-20 23:58:52,857 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:52,859 INFO L933 BasicCegarLoop]: 134 mSDtfsCounter, 8 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 207 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:52,859 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 207 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:58:52,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-02-20 23:58:52,881 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 127. [2022-02-20 23:58:52,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:52,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:52,889 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:52,889 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:52,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:52,895 INFO L93 Difference]: Finished difference Result 127 states and 137 transitions. [2022-02-20 23:58:52,895 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:52,896 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:52,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:52,897 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 127 states. [2022-02-20 23:58:52,897 INFO L87 Difference]: Start difference. First operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 127 states. [2022-02-20 23:58:52,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:52,902 INFO L93 Difference]: Finished difference Result 127 states and 137 transitions. [2022-02-20 23:58:52,903 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:52,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:52,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:52,904 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:52,904 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:52,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 67 states have (on average 1.955223880597015) internal successors, (131), 122 states have internal predecessors, (131), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:52,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 137 transitions. [2022-02-20 23:58:52,909 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 137 transitions. Word has length 6 [2022-02-20 23:58:52,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:52,909 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 137 transitions. [2022-02-20 23:58:52,909 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:52,910 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 137 transitions. [2022-02-20 23:58:52,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:58:52,910 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:52,910 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:58:52,919 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:53,117 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:58:53,117 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting node_createErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:53,118 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:53,118 INFO L85 PathProgramCache]: Analyzing trace with hash 895983382, now seen corresponding path program 1 times [2022-02-20 23:58:53,119 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:53,119 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1790749408] [2022-02-20 23:58:53,119 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:53,119 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:53,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:53,120 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:53,143 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 23:58:53,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:53,184 INFO L263 TraceCheckSpWp]: Trace formula consists of 50 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:58:53,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:53,192 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:53,229 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:53,245 INFO L290 TraceCheckUtils]: 0: Hoare triple {666#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {666#true} is VALID [2022-02-20 23:58:53,245 INFO L290 TraceCheckUtils]: 1: Hoare triple {666#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {666#true} is VALID [2022-02-20 23:58:53,245 INFO L272 TraceCheckUtils]: 2: Hoare triple {666#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {666#true} is VALID [2022-02-20 23:58:53,246 INFO L290 TraceCheckUtils]: 3: Hoare triple {666#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {680#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:53,247 INFO L290 TraceCheckUtils]: 4: Hoare triple {680#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {680#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:53,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {680#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~temp~0#1.offset), #length[~temp~0#1.base]) && ~bvule32(~temp~0#1.offset, ~bvadd32(4bv32, ~temp~0#1.offset))) && ~bvule32(0bv32, ~temp~0#1.offset)); {667#false} is VALID [2022-02-20 23:58:53,247 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:53,248 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:58:53,248 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:53,248 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1790749408] [2022-02-20 23:58:53,248 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1790749408] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:53,248 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:53,248 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:58:53,248 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1985221821] [2022-02-20 23:58:53,248 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:53,249 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:53,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:53,249 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:53,269 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:53,269 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:58:53,269 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:53,270 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:58:53,270 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:53,270 INFO L87 Difference]: Start difference. First operand 127 states and 137 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:53,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:53,706 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:53,706 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:58:53,706 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:58:53,706 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:53,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:53,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 23:58:53,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:53,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 23:58:53,710 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 137 transitions. [2022-02-20 23:58:53,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:53,825 INFO L225 Difference]: With dead ends: 125 [2022-02-20 23:58:53,825 INFO L226 Difference]: Without dead ends: 125 [2022-02-20 23:58:53,825 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:53,826 INFO L933 BasicCegarLoop]: 131 mSDtfsCounter, 4 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:53,826 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 209 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:58:53,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-02-20 23:58:53,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 125. [2022-02-20 23:58:53,830 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:53,830 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:53,831 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:53,831 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:53,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:53,834 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:53,834 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:53,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:53,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:53,835 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:53,836 INFO L87 Difference]: Start difference. First operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:53,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:53,838 INFO L93 Difference]: Finished difference Result 125 states and 135 transitions. [2022-02-20 23:58:53,838 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:53,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:53,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:53,839 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:53,839 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:53,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 67 states have (on average 1.9253731343283582) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:53,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 135 transitions. [2022-02-20 23:58:53,842 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 135 transitions. Word has length 6 [2022-02-20 23:58:53,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:53,843 INFO L470 AbstractCegarLoop]: Abstraction has 125 states and 135 transitions. [2022-02-20 23:58:53,843 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:58:53,843 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:53,843 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:58:53,843 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:53,843 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:53,865 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:54,050 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:58:54,050 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:54,051 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:54,051 INFO L85 PathProgramCache]: Analyzing trace with hash 229520599, now seen corresponding path program 1 times [2022-02-20 23:58:54,051 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:54,052 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1667583801] [2022-02-20 23:58:54,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:54,052 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:54,052 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:54,053 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:54,054 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2022-02-20 23:58:54,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:54,110 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:58:54,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:54,118 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:54,156 INFO L290 TraceCheckUtils]: 0: Hoare triple {1186#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {1186#true} is VALID [2022-02-20 23:58:54,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {1186#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:58:54,157 INFO L272 TraceCheckUtils]: 2: Hoare triple {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {1186#true} is VALID [2022-02-20 23:58:54,157 INFO L290 TraceCheckUtils]: 3: Hoare triple {1186#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1186#true} is VALID [2022-02-20 23:58:54,157 INFO L290 TraceCheckUtils]: 4: Hoare triple {1186#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {1186#true} is VALID [2022-02-20 23:58:54,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {1186#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {1186#true} is VALID [2022-02-20 23:58:54,158 INFO L290 TraceCheckUtils]: 6: Hoare triple {1186#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {1186#true} is VALID [2022-02-20 23:58:54,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {1186#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1186#true} is VALID [2022-02-20 23:58:54,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {1186#true} assume true; {1186#true} is VALID [2022-02-20 23:58:54,159 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1186#true} {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} #217#return; {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:58:54,159 INFO L290 TraceCheckUtils]: 10: Hoare triple {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:58:54,160 INFO L290 TraceCheckUtils]: 11: Hoare triple {1194#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {1187#false} is VALID [2022-02-20 23:58:54,160 INFO L290 TraceCheckUtils]: 12: Hoare triple {1187#false} assume !(1bv1 == #valid[sll_circular_create_~last~0#1.base]); {1187#false} is VALID [2022-02-20 23:58:54,160 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:58:54,160 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:58:54,160 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:54,160 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1667583801] [2022-02-20 23:58:54,160 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1667583801] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:54,161 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:54,161 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:58:54,161 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2042891556] [2022-02-20 23:58:54,161 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:54,161 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:58:54,162 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:54,162 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:54,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:54,173 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:58:54,173 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:54,173 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:58:54,173 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:54,174 INFO L87 Difference]: Start difference. First operand 125 states and 135 transitions. Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:54,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:54,439 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:54,439 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:58:54,439 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:58:54,439 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:54,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:54,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:58:54,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:54,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:58:54,443 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 144 transitions. [2022-02-20 23:58:54,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:54,559 INFO L225 Difference]: With dead ends: 132 [2022-02-20 23:58:54,559 INFO L226 Difference]: Without dead ends: 132 [2022-02-20 23:58:54,559 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:58:54,560 INFO L933 BasicCegarLoop]: 134 mSDtfsCounter, 5 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 263 SdHoareTripleChecker+Invalid, 5 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:54,560 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 263 Invalid, 5 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 5 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:58:54,561 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-02-20 23:58:54,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 126. [2022-02-20 23:58:54,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:54,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:54,565 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:54,565 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:54,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:54,568 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:54,568 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 143 transitions. [2022-02-20 23:58:54,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:54,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:54,569 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 132 states. [2022-02-20 23:58:54,569 INFO L87 Difference]: Start difference. First operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 132 states. [2022-02-20 23:58:54,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:54,572 INFO L93 Difference]: Finished difference Result 132 states and 143 transitions. [2022-02-20 23:58:54,572 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 143 transitions. [2022-02-20 23:58:54,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:54,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:54,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:54,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:54,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 68 states have (on average 1.911764705882353) internal successors, (130), 121 states have internal predecessors, (130), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:54,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 136 transitions. [2022-02-20 23:58:54,576 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 136 transitions. Word has length 13 [2022-02-20 23:58:54,576 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:54,576 INFO L470 AbstractCegarLoop]: Abstraction has 126 states and 136 transitions. [2022-02-20 23:58:54,576 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:58:54,576 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 136 transitions. [2022-02-20 23:58:54,577 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:58:54,577 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:54,577 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:54,585 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:54,784 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:58:54,784 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:54,785 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:54,785 INFO L85 PathProgramCache]: Analyzing trace with hash 2102414876, now seen corresponding path program 1 times [2022-02-20 23:58:54,785 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:54,785 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1369211913] [2022-02-20 23:58:54,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:54,786 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:54,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:54,787 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:54,789 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2022-02-20 23:58:54,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:54,879 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:58:54,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:54,895 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:54,934 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:54,976 INFO L290 TraceCheckUtils]: 0: Hoare triple {1749#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {1749#true} is VALID [2022-02-20 23:58:54,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {1749#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {1749#true} is VALID [2022-02-20 23:58:54,977 INFO L272 TraceCheckUtils]: 2: Hoare triple {1749#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {1749#true} is VALID [2022-02-20 23:58:54,977 INFO L290 TraceCheckUtils]: 3: Hoare triple {1749#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1749#true} is VALID [2022-02-20 23:58:54,977 INFO L290 TraceCheckUtils]: 4: Hoare triple {1749#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {1749#true} is VALID [2022-02-20 23:58:54,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {1749#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {1749#true} is VALID [2022-02-20 23:58:54,978 INFO L290 TraceCheckUtils]: 6: Hoare triple {1749#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {1749#true} is VALID [2022-02-20 23:58:54,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {1749#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1749#true} is VALID [2022-02-20 23:58:54,978 INFO L290 TraceCheckUtils]: 8: Hoare triple {1749#true} assume true; {1749#true} is VALID [2022-02-20 23:58:54,978 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1749#true} {1749#true} #217#return; {1749#true} is VALID [2022-02-20 23:58:54,978 INFO L290 TraceCheckUtils]: 10: Hoare triple {1749#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {1749#true} is VALID [2022-02-20 23:58:54,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {1749#true} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {1749#true} is VALID [2022-02-20 23:58:54,979 INFO L272 TraceCheckUtils]: 12: Hoare triple {1749#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {1749#true} is VALID [2022-02-20 23:58:54,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {1749#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,980 INFO L290 TraceCheckUtils]: 15: Hoare triple {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,981 INFO L290 TraceCheckUtils]: 17: Hoare triple {1793#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {1806#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,981 INFO L290 TraceCheckUtils]: 18: Hoare triple {1806#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} assume true; {1806#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,982 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1806#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} {1749#true} #219#return; {1813#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,983 INFO L290 TraceCheckUtils]: 20: Hoare triple {1813#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv1 1))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {1817#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:54,983 INFO L290 TraceCheckUtils]: 21: Hoare triple {1817#(= (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[sll_circular_create_~new_head~0#1.base]); {1750#false} is VALID [2022-02-20 23:58:54,983 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:54,984 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:58:54,984 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:54,984 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1369211913] [2022-02-20 23:58:54,984 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1369211913] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:54,984 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:54,984 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:58:54,984 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [594524152] [2022-02-20 23:58:54,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:54,985 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:54,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:54,985 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:55,005 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:55,006 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:58:55,006 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:55,006 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:58:55,006 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:58:55,007 INFO L87 Difference]: Start difference. First operand 126 states and 136 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:56,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:56,013 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:56,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:58:56,014 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:56,014 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:56,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:56,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 138 transitions. [2022-02-20 23:58:56,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:56,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 138 transitions. [2022-02-20 23:58:56,017 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 138 transitions. [2022-02-20 23:58:56,131 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:56,133 INFO L225 Difference]: With dead ends: 126 [2022-02-20 23:58:56,133 INFO L226 Difference]: Without dead ends: 126 [2022-02-20 23:58:56,133 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:58:56,134 INFO L933 BasicCegarLoop]: 127 mSDtfsCounter, 12 mSDsluCounter, 273 mSDsCounter, 0 mSdLazyCounter, 264 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 400 SdHoareTripleChecker+Invalid, 264 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 264 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:56,134 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 400 Invalid, 264 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 264 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:58:56,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-02-20 23:58:56,137 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 125. [2022-02-20 23:58:56,137 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:56,138 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:56,138 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:56,138 INFO L87 Difference]: Start difference. First operand 126 states. Second operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:56,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:56,140 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:56,141 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 137 transitions. [2022-02-20 23:58:56,141 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:56,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:56,141 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 126 states. [2022-02-20 23:58:56,142 INFO L87 Difference]: Start difference. First operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 126 states. [2022-02-20 23:58:56,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:56,146 INFO L93 Difference]: Finished difference Result 126 states and 137 transitions. [2022-02-20 23:58:56,146 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 137 transitions. [2022-02-20 23:58:56,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:56,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:56,146 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:56,152 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:56,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 68 states have (on average 1.8970588235294117) internal successors, (129), 120 states have internal predecessors, (129), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:56,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 135 transitions. [2022-02-20 23:58:56,155 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 135 transitions. Word has length 22 [2022-02-20 23:58:56,155 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:56,155 INFO L470 AbstractCegarLoop]: Abstraction has 125 states and 135 transitions. [2022-02-20 23:58:56,155 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:56,155 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 135 transitions. [2022-02-20 23:58:56,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:58:56,156 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:56,156 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:56,178 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:56,363 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:58:56,363 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:56,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:56,364 INFO L85 PathProgramCache]: Analyzing trace with hash 2102414877, now seen corresponding path program 1 times [2022-02-20 23:58:56,364 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:56,364 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2079437689] [2022-02-20 23:58:56,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:56,364 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:56,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:56,366 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:56,368 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Waiting until timeout for monitored process [2022-02-20 23:58:56,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:56,464 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:58:56,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:56,478 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:56,512 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:56,609 INFO L290 TraceCheckUtils]: 0: Hoare triple {2325#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {2325#true} is VALID [2022-02-20 23:58:56,609 INFO L290 TraceCheckUtils]: 1: Hoare triple {2325#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2325#true} is VALID [2022-02-20 23:58:56,609 INFO L272 TraceCheckUtils]: 2: Hoare triple {2325#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2325#true} is VALID [2022-02-20 23:58:56,609 INFO L290 TraceCheckUtils]: 3: Hoare triple {2325#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 4: Hoare triple {2325#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 5: Hoare triple {2325#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 6: Hoare triple {2325#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 7: Hoare triple {2325#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 8: Hoare triple {2325#true} assume true; {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2325#true} {2325#true} #217#return; {2325#true} is VALID [2022-02-20 23:58:56,610 INFO L290 TraceCheckUtils]: 10: Hoare triple {2325#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2325#true} is VALID [2022-02-20 23:58:56,611 INFO L290 TraceCheckUtils]: 11: Hoare triple {2325#true} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {2325#true} is VALID [2022-02-20 23:58:56,611 INFO L272 TraceCheckUtils]: 12: Hoare triple {2325#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2325#true} is VALID [2022-02-20 23:58:56,612 INFO L290 TraceCheckUtils]: 13: Hoare triple {2325#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:56,612 INFO L290 TraceCheckUtils]: 14: Hoare triple {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:56,613 INFO L290 TraceCheckUtils]: 15: Hoare triple {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:56,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:58:56,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {2369#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2382#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} is VALID [2022-02-20 23:58:56,615 INFO L290 TraceCheckUtils]: 18: Hoare triple {2382#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} assume true; {2382#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} is VALID [2022-02-20 23:58:56,616 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2382#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} {2325#true} #219#return; {2389#(and (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:58:56,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {2389#(and (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2393#(and (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:58:56,617 INFO L290 TraceCheckUtils]: 21: Hoare triple {2393#(and (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_create_~new_head~0#1.offset), #length[sll_circular_create_~new_head~0#1.base]) && ~bvule32(sll_circular_create_~new_head~0#1.offset, ~bvadd32(4bv32, sll_circular_create_~new_head~0#1.offset))) && ~bvule32(0bv32, sll_circular_create_~new_head~0#1.offset)); {2326#false} is VALID [2022-02-20 23:58:56,617 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:56,617 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:58:56,617 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:56,617 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2079437689] [2022-02-20 23:58:56,617 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2079437689] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:58:56,617 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:58:56,617 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:58:56,618 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [328414907] [2022-02-20 23:58:56,618 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:58:56,618 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:56,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:56,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:56,646 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:56,647 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:58:56,647 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:56,647 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:58:56,647 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:58:56,648 INFO L87 Difference]: Start difference. First operand 125 states and 135 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:57,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:57,862 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:57,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:58:57,862 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:58:57,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:58:57,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:57,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 137 transitions. [2022-02-20 23:58:57,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:57,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 137 transitions. [2022-02-20 23:58:57,865 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 137 transitions. [2022-02-20 23:58:57,965 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:57,971 INFO L225 Difference]: With dead ends: 125 [2022-02-20 23:58:57,971 INFO L226 Difference]: Without dead ends: 125 [2022-02-20 23:58:57,972 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:58:57,972 INFO L933 BasicCegarLoop]: 127 mSDtfsCounter, 11 mSDsluCounter, 297 mSDsCounter, 0 mSdLazyCounter, 236 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 424 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 236 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:58:57,972 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 424 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 236 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:58:57,973 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-02-20 23:58:57,975 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 124. [2022-02-20 23:58:57,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:58:57,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:57,984 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:57,984 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:57,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:57,988 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:57,988 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 136 transitions. [2022-02-20 23:58:57,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:57,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:57,991 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:57,992 INFO L87 Difference]: Start difference. First operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 125 states. [2022-02-20 23:58:57,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:58:57,999 INFO L93 Difference]: Finished difference Result 125 states and 136 transitions. [2022-02-20 23:58:57,999 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 136 transitions. [2022-02-20 23:58:58,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:58:58,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:58:58,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:58:58,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:58:58,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 68 states have (on average 1.8823529411764706) internal successors, (128), 119 states have internal predecessors, (128), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:58:58,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 134 transitions. [2022-02-20 23:58:58,003 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 134 transitions. Word has length 22 [2022-02-20 23:58:58,003 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:58:58,003 INFO L470 AbstractCegarLoop]: Abstraction has 124 states and 134 transitions. [2022-02-20 23:58:58,004 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:58:58,004 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 134 transitions. [2022-02-20 23:58:58,004 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:58:58,004 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:58:58,004 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:58:58,011 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Forceful destruction successful, exit code 0 [2022-02-20 23:58:58,211 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:58:58,212 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:58:58,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:58:58,212 INFO L85 PathProgramCache]: Analyzing trace with hash -466517819, now seen corresponding path program 1 times [2022-02-20 23:58:58,213 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:58:58,213 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1722532807] [2022-02-20 23:58:58,213 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:58:58,213 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:58:58,213 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:58:58,214 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:58:58,221 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2022-02-20 23:58:58,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:58,330 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:58:58,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:58:58,343 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:58:58,354 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:58:58,540 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:58:58,541 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:58:58,570 INFO L290 TraceCheckUtils]: 0: Hoare triple {2897#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {2897#true} is VALID [2022-02-20 23:58:58,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {2897#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2897#true} is VALID [2022-02-20 23:58:58,572 INFO L272 TraceCheckUtils]: 2: Hoare triple {2897#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2897#true} is VALID [2022-02-20 23:58:58,573 INFO L290 TraceCheckUtils]: 3: Hoare triple {2897#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,574 INFO L290 TraceCheckUtils]: 4: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,574 INFO L290 TraceCheckUtils]: 6: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,575 INFO L290 TraceCheckUtils]: 7: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} assume true; {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,593 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} {2897#true} #217#return; {2931#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,593 INFO L290 TraceCheckUtils]: 10: Hoare triple {2931#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,594 INFO L290 TraceCheckUtils]: 11: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,594 INFO L272 TraceCheckUtils]: 12: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2942#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:58:58,596 INFO L290 TraceCheckUtils]: 13: Hoare triple {2942#(= |old(#valid)| |#valid|)} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,598 INFO L290 TraceCheckUtils]: 15: Hoare triple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,600 INFO L290 TraceCheckUtils]: 16: Hoare triple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,600 INFO L290 TraceCheckUtils]: 17: Hoare triple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,601 INFO L290 TraceCheckUtils]: 18: Hoare triple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume true; {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:58:58,603 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2946#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_126 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_126) |#valid|)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} #219#return; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,603 INFO L290 TraceCheckUtils]: 20: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,604 INFO L290 TraceCheckUtils]: 21: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,604 INFO L290 TraceCheckUtils]: 22: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,605 INFO L290 TraceCheckUtils]: 23: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,605 INFO L290 TraceCheckUtils]: 24: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !(1bv1 == #valid[sll_circular_create_~last~0#1.base]); {2898#false} is VALID [2022-02-20 23:58:58,605 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:58,605 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:58:58,911 INFO L290 TraceCheckUtils]: 24: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !(1bv1 == #valid[sll_circular_create_~last~0#1.base]); {2898#false} is VALID [2022-02-20 23:58:58,911 INFO L290 TraceCheckUtils]: 23: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,912 INFO L290 TraceCheckUtils]: 22: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,912 INFO L290 TraceCheckUtils]: 21: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,912 INFO L290 TraceCheckUtils]: 20: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,914 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} #219#return; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,914 INFO L290 TraceCheckUtils]: 18: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} assume true; {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,914 INFO L290 TraceCheckUtils]: 17: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,915 INFO L290 TraceCheckUtils]: 16: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,917 INFO L290 TraceCheckUtils]: 15: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,918 INFO L290 TraceCheckUtils]: 14: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,919 INFO L290 TraceCheckUtils]: 13: Hoare triple {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,920 INFO L272 TraceCheckUtils]: 12: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {2998#(forall ((|v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (= (select |#valid| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)) (not (= (select |old(#valid)| |v_ULTIMATE.start_sll_circular_create_~last~0#1.base_BEFORE_CALL_2|) (_ bv1 1)))))} is VALID [2022-02-20 23:58:58,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,921 INFO L290 TraceCheckUtils]: 10: Hoare triple {2931#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {2935#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|))} is VALID [2022-02-20 23:58:58,921 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} {2897#true} #217#return; {2931#(= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} assume true; {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {2924#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,922 INFO L290 TraceCheckUtils]: 6: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,923 INFO L290 TraceCheckUtils]: 4: Hoare triple {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,924 INFO L290 TraceCheckUtils]: 3: Hoare triple {2897#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {2911#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:58:58,924 INFO L272 TraceCheckUtils]: 2: Hoare triple {2897#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {2897#true} is VALID [2022-02-20 23:58:58,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {2897#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {2897#true} is VALID [2022-02-20 23:58:58,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {2897#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {2897#true} is VALID [2022-02-20 23:58:58,926 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:58:58,926 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:58:58,926 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1722532807] [2022-02-20 23:58:58,926 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1722532807] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:58:58,926 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:58:58,926 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 8 [2022-02-20 23:58:58,926 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1791728354] [2022-02-20 23:58:58,926 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:58:58,927 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 25 [2022-02-20 23:58:58,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:58:58,927 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:58:58,969 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:58:58,969 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:58:58,969 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:58:58,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:58:58,970 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:58:58,970 INFO L87 Difference]: Start difference. First operand 124 states and 134 transitions. Second operand has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:00,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:00,467 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:59:00,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:59:00,467 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 25 [2022-02-20 23:59:00,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:00,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:00,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 133 transitions. [2022-02-20 23:59:00,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:00,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 133 transitions. [2022-02-20 23:59:00,470 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 133 transitions. [2022-02-20 23:59:00,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:00,570 INFO L225 Difference]: With dead ends: 123 [2022-02-20 23:59:00,570 INFO L226 Difference]: Without dead ends: 123 [2022-02-20 23:59:00,570 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 38 SyntacticMatches, 3 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:59:00,570 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 4 mSDsluCounter, 464 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 585 SdHoareTripleChecker+Invalid, 408 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 283 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 123 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:00,571 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 585 Invalid, 408 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 283 Invalid, 0 Unknown, 123 Unchecked, 0.4s Time] [2022-02-20 23:59:00,571 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2022-02-20 23:59:00,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 123. [2022-02-20 23:59:00,575 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:00,575 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:00,576 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:00,576 INFO L87 Difference]: Start difference. First operand 123 states. Second operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:00,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:00,584 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:59:00,584 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:59:00,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:00,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:00,585 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 123 states. [2022-02-20 23:59:00,585 INFO L87 Difference]: Start difference. First operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 123 states. [2022-02-20 23:59:00,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:00,588 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2022-02-20 23:59:00,589 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:59:00,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:00,598 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:00,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:00,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:00,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 68 states have (on average 1.8676470588235294) internal successors, (127), 118 states have internal predecessors, (127), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:00,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 133 transitions. [2022-02-20 23:59:00,613 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 133 transitions. Word has length 25 [2022-02-20 23:59:00,614 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:00,614 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 133 transitions. [2022-02-20 23:59:00,614 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:00,614 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2022-02-20 23:59:00,614 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:59:00,614 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:00,614 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:00,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:00,821 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:00,821 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:00,822 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:00,822 INFO L85 PathProgramCache]: Analyzing trace with hash -466517818, now seen corresponding path program 1 times [2022-02-20 23:59:00,822 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:00,822 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [492219938] [2022-02-20 23:59:00,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:00,822 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:00,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:00,823 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:00,824 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Waiting until timeout for monitored process [2022-02-20 23:59:00,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:00,912 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:59:00,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:00,926 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:00,942 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:00,946 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:01,200 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:01,201 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:01,208 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:59:01,208 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:59:01,266 INFO L290 TraceCheckUtils]: 0: Hoare triple {3548#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {3548#true} is VALID [2022-02-20 23:59:01,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {3548#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {3548#true} is VALID [2022-02-20 23:59:01,267 INFO L272 TraceCheckUtils]: 2: Hoare triple {3548#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {3548#true} is VALID [2022-02-20 23:59:01,268 INFO L290 TraceCheckUtils]: 3: Hoare triple {3548#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:01,268 INFO L290 TraceCheckUtils]: 4: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:01,269 INFO L290 TraceCheckUtils]: 5: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:01,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:01,270 INFO L290 TraceCheckUtils]: 7: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:01,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:01,271 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {3548#true} #217#return; {3582#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|))} is VALID [2022-02-20 23:59:01,272 INFO L290 TraceCheckUtils]: 10: Hoare triple {3582#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,272 INFO L290 TraceCheckUtils]: 11: Hoare triple {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,273 INFO L272 TraceCheckUtils]: 12: Hoare triple {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {3593#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:59:01,274 INFO L290 TraceCheckUtils]: 13: Hoare triple {3593#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,275 INFO L290 TraceCheckUtils]: 14: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,275 INFO L290 TraceCheckUtils]: 15: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,276 INFO L290 TraceCheckUtils]: 16: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,277 INFO L290 TraceCheckUtils]: 17: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,277 INFO L290 TraceCheckUtils]: 18: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume true; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:01,279 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} #219#return; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,279 INFO L290 TraceCheckUtils]: 20: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,280 INFO L290 TraceCheckUtils]: 21: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,280 INFO L290 TraceCheckUtils]: 22: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,280 INFO L290 TraceCheckUtils]: 23: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:01,281 INFO L290 TraceCheckUtils]: 24: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_create_~last~0#1.offset), #length[sll_circular_create_~last~0#1.base]) && ~bvule32(sll_circular_create_~last~0#1.offset, ~bvadd32(4bv32, sll_circular_create_~last~0#1.offset))) && ~bvule32(0bv32, sll_circular_create_~last~0#1.offset)); {3549#false} is VALID [2022-02-20 23:59:01,281 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:59:01,281 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:03,584 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:03,585 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [492219938] [2022-02-20 23:59:03,585 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [492219938] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:03,585 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1623772556] [2022-02-20 23:59:03,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:03,585 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:59:03,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:59:03,587 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:59:03,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (9)] Waiting until timeout for monitored process [2022-02-20 23:59:03,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:03,855 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:59:03,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:03,868 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:03,883 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:03,889 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:06,183 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:06,184 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:06,192 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:59:06,192 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:59:06,231 INFO L290 TraceCheckUtils]: 0: Hoare triple {3548#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {3548#true} is VALID [2022-02-20 23:59:06,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {3548#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {3548#true} is VALID [2022-02-20 23:59:06,232 INFO L272 TraceCheckUtils]: 2: Hoare triple {3548#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {3548#true} is VALID [2022-02-20 23:59:06,233 INFO L290 TraceCheckUtils]: 3: Hoare triple {3548#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:06,233 INFO L290 TraceCheckUtils]: 4: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:06,234 INFO L290 TraceCheckUtils]: 5: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:06,235 INFO L290 TraceCheckUtils]: 6: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:06,235 INFO L290 TraceCheckUtils]: 7: Hoare triple {3562#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:06,236 INFO L290 TraceCheckUtils]: 8: Hoare triple {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:06,236 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3575#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {3548#true} #217#return; {3582#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|))} is VALID [2022-02-20 23:59:06,237 INFO L290 TraceCheckUtils]: 10: Hoare triple {3582#(and (= (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|) (_ bv1 1)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret4#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#t~ret4#1.offset|))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,237 INFO L290 TraceCheckUtils]: 11: Hoare triple {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,238 INFO L272 TraceCheckUtils]: 12: Hoare triple {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {3593#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:59:06,239 INFO L290 TraceCheckUtils]: 13: Hoare triple {3593#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,240 INFO L290 TraceCheckUtils]: 14: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,240 INFO L290 TraceCheckUtils]: 15: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,241 INFO L290 TraceCheckUtils]: 16: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,241 INFO L290 TraceCheckUtils]: 17: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,242 INFO L290 TraceCheckUtils]: 18: Hoare triple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} assume true; {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} is VALID [2022-02-20 23:59:06,243 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3597#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_169 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_169))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|)))))} {3586#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} #219#return; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,244 INFO L290 TraceCheckUtils]: 20: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,244 INFO L290 TraceCheckUtils]: 21: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,245 INFO L290 TraceCheckUtils]: 22: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,245 INFO L290 TraceCheckUtils]: 23: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} is VALID [2022-02-20 23:59:06,246 INFO L290 TraceCheckUtils]: 24: Hoare triple {3616#(and (= |ULTIMATE.start_sll_circular_create_~last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~last~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_create_~last~0#1.offset), #length[sll_circular_create_~last~0#1.base]) && ~bvule32(sll_circular_create_~last~0#1.offset, ~bvadd32(4bv32, sll_circular_create_~last~0#1.offset))) && ~bvule32(0bv32, sll_circular_create_~last~0#1.offset)); {3549#false} is VALID [2022-02-20 23:59:06,246 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:59:06,246 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:06,441 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1623772556] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:06,441 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:59:06,441 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-02-20 23:59:06,441 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [864606548] [2022-02-20 23:59:06,441 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:59:06,442 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-02-20 23:59:06,442 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:06,442 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:59:06,470 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:06,470 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:59:06,470 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:06,470 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:59:06,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=86, Unknown=1, NotChecked=0, Total=110 [2022-02-20 23:59:06,471 INFO L87 Difference]: Start difference. First operand 123 states and 133 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:59:08,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:08,426 INFO L93 Difference]: Finished difference Result 133 states and 147 transitions. [2022-02-20 23:59:08,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:59:08,426 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-02-20 23:59:08,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:08,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:59:08,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 148 transitions. [2022-02-20 23:59:08,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:59:08,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 148 transitions. [2022-02-20 23:59:08,430 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 148 transitions. [2022-02-20 23:59:08,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:08,565 INFO L225 Difference]: With dead ends: 133 [2022-02-20 23:59:08,565 INFO L226 Difference]: Without dead ends: 133 [2022-02-20 23:59:08,566 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 49 SyntacticMatches, 2 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 4.3s TimeCoverageRelationStatistics Valid=31, Invalid=124, Unknown=1, NotChecked=0, Total=156 [2022-02-20 23:59:08,566 INFO L933 BasicCegarLoop]: 124 mSDtfsCounter, 7 mSDsluCounter, 336 mSDsCounter, 0 mSdLazyCounter, 364 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 460 SdHoareTripleChecker+Invalid, 450 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 364 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 79 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:08,566 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 460 Invalid, 450 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 364 Invalid, 0 Unknown, 79 Unchecked, 0.6s Time] [2022-02-20 23:59:08,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2022-02-20 23:59:08,569 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 129. [2022-02-20 23:59:08,569 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:08,569 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:08,569 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:08,569 INFO L87 Difference]: Start difference. First operand 133 states. Second operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:08,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:08,580 INFO L93 Difference]: Finished difference Result 133 states and 147 transitions. [2022-02-20 23:59:08,581 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 147 transitions. [2022-02-20 23:59:08,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:08,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:08,581 INFO L74 IsIncluded]: Start isIncluded. First operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 133 states. [2022-02-20 23:59:08,582 INFO L87 Difference]: Start difference. First operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 133 states. [2022-02-20 23:59:08,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:08,584 INFO L93 Difference]: Finished difference Result 133 states and 147 transitions. [2022-02-20 23:59:08,584 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 147 transitions. [2022-02-20 23:59:08,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:08,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:08,585 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:08,585 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:08,585 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 129 states, 73 states have (on average 1.821917808219178) internal successors, (133), 123 states have internal predecessors, (133), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:08,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 141 transitions. [2022-02-20 23:59:08,588 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 141 transitions. Word has length 25 [2022-02-20 23:59:08,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:08,588 INFO L470 AbstractCegarLoop]: Abstraction has 129 states and 141 transitions. [2022-02-20 23:59:08,588 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:59:08,588 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 141 transitions. [2022-02-20 23:59:08,588 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 23:59:08,589 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:08,589 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:08,592 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (9)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:08,799 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:08,992 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:08,992 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:08,992 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:08,992 INFO L85 PathProgramCache]: Analyzing trace with hash -342690401, now seen corresponding path program 1 times [2022-02-20 23:59:08,993 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:08,993 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2116349940] [2022-02-20 23:59:08,993 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:08,993 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:08,993 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:08,994 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:08,996 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Waiting until timeout for monitored process [2022-02-20 23:59:09,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:09,183 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:59:09,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:09,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:09,223 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:09,240 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:09,388 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:59:09,388 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:59:09,429 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:09,563 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:09,564 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:09,788 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:59:09,788 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 17 [2022-02-20 23:59:09,823 INFO L290 TraceCheckUtils]: 0: Hoare triple {4273#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {4273#true} is VALID [2022-02-20 23:59:09,824 INFO L290 TraceCheckUtils]: 1: Hoare triple {4273#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:09,825 INFO L272 TraceCheckUtils]: 2: Hoare triple {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,826 INFO L290 TraceCheckUtils]: 3: Hoare triple {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,826 INFO L290 TraceCheckUtils]: 4: Hoare triple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,829 INFO L290 TraceCheckUtils]: 6: Hoare triple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,830 INFO L290 TraceCheckUtils]: 8: Hoare triple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,831 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {4289#(and (exists ((v_ArrVal_272 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_272) |#valid|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} #217#return; {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:09,831 INFO L290 TraceCheckUtils]: 10: Hoare triple {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:09,832 INFO L290 TraceCheckUtils]: 11: Hoare triple {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:09,833 INFO L272 TraceCheckUtils]: 12: Hoare triple {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,833 INFO L290 TraceCheckUtils]: 13: Hoare triple {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,835 INFO L290 TraceCheckUtils]: 15: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,839 INFO L290 TraceCheckUtils]: 16: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,840 INFO L290 TraceCheckUtils]: 17: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,840 INFO L290 TraceCheckUtils]: 18: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:09,845 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {4281#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} #219#return; {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,847 INFO L290 TraceCheckUtils]: 21: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,848 INFO L290 TraceCheckUtils]: 22: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,850 INFO L290 TraceCheckUtils]: 25: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,850 INFO L290 TraceCheckUtils]: 26: Hoare triple {4339#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,851 INFO L272 TraceCheckUtils]: 27: Hoare triple {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {4365#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:59:09,852 INFO L290 TraceCheckUtils]: 28: Hoare triple {4365#(= |old(#valid)| |#valid|)} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,852 INFO L290 TraceCheckUtils]: 29: Hoare triple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,853 INFO L290 TraceCheckUtils]: 30: Hoare triple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,854 INFO L290 TraceCheckUtils]: 31: Hoare triple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,858 INFO L290 TraceCheckUtils]: 33: Hoare triple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} assume true; {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} is VALID [2022-02-20 23:59:09,859 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {4369#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#valid)| |node_create_~temp~0#1.base| (_ bv1 1)) |#valid|))} {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} #221#return; {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,859 INFO L290 TraceCheckUtils]: 35: Hoare triple {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:09,859 INFO L290 TraceCheckUtils]: 36: Hoare triple {4361#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} assume !(1bv1 == #valid[sll_circular_append_~head#1.base]); {4274#false} is VALID [2022-02-20 23:59:09,860 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:59:09,860 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:10,114 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:10,114 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2116349940] [2022-02-20 23:59:10,114 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2116349940] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:10,114 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1752591741] [2022-02-20 23:59:10,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:10,115 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:59:10,115 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:59:10,132 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:59:10,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (11)] Waiting until timeout for monitored process [2022-02-20 23:59:10,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:10,342 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:59:10,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:10,378 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:10,414 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:59:10,415 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 17 [2022-02-20 23:59:10,455 INFO L356 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2022-02-20 23:59:10,456 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:59:10,570 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:10,573 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:10,587 INFO L356 Elim1Store]: treesize reduction 8, result has 60.0 percent of original size [2022-02-20 23:59:10,588 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 31 [2022-02-20 23:59:10,694 INFO L356 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2022-02-20 23:59:10,695 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 18 [2022-02-20 23:59:10,841 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:10,844 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:10,857 INFO L356 Elim1Store]: treesize reduction 8, result has 60.0 percent of original size [2022-02-20 23:59:10,857 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 40 [2022-02-20 23:59:11,104 INFO L356 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2022-02-20 23:59:11,104 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 18 [2022-02-20 23:59:11,247 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:11,250 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:11,264 INFO L356 Elim1Store]: treesize reduction 8, result has 60.0 percent of original size [2022-02-20 23:59:11,264 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 40 [2022-02-20 23:59:11,457 INFO L290 TraceCheckUtils]: 0: Hoare triple {4273#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {4452#(= (_ bv1 1) (select |#valid| (_ bv1 32)))} is VALID [2022-02-20 23:59:11,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {4452#(= (_ bv1 1) (select |#valid| (_ bv1 32)))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {4456#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))))} is VALID [2022-02-20 23:59:11,459 INFO L272 TraceCheckUtils]: 2: Hoare triple {4456#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,460 INFO L290 TraceCheckUtils]: 3: Hoare triple {4285#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,461 INFO L290 TraceCheckUtils]: 4: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,462 INFO L290 TraceCheckUtils]: 5: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,464 INFO L290 TraceCheckUtils]: 6: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,465 INFO L290 TraceCheckUtils]: 7: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,472 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {4456#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))))} #217#return; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,472 INFO L290 TraceCheckUtils]: 10: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,474 INFO L272 TraceCheckUtils]: 12: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {4491#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {4491#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,476 INFO L290 TraceCheckUtils]: 14: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,478 INFO L290 TraceCheckUtils]: 15: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,481 INFO L290 TraceCheckUtils]: 18: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,494 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} #219#return; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,495 INFO L290 TraceCheckUtils]: 20: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,496 INFO L290 TraceCheckUtils]: 21: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,497 INFO L290 TraceCheckUtils]: 22: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,497 INFO L290 TraceCheckUtils]: 23: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,498 INFO L290 TraceCheckUtils]: 24: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,498 INFO L290 TraceCheckUtils]: 25: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:11,499 INFO L290 TraceCheckUtils]: 26: Hoare triple {4481#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {4534#(and (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|))} is VALID [2022-02-20 23:59:11,501 INFO L272 TraceCheckUtils]: 27: Hoare triple {4534#(and (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {4491#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,502 INFO L290 TraceCheckUtils]: 28: Hoare triple {4491#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,502 INFO L290 TraceCheckUtils]: 29: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,504 INFO L290 TraceCheckUtils]: 30: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,506 INFO L290 TraceCheckUtils]: 31: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,506 INFO L290 TraceCheckUtils]: 32: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,507 INFO L290 TraceCheckUtils]: 33: Hoare triple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:11,521 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {4320#(and (exists ((v_ArrVal_273 (_ BitVec 1)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_273) |#valid|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {4534#(and (or (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|))} #221#return; {4559#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (or (and (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv1 32)))) (_ bv1 1))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)))))} is VALID [2022-02-20 23:59:11,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {4559#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (or (and (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv1 32)))) (_ bv1 1))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {4559#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (or (and (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv1 32)))) (_ bv1 1))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)))))} is VALID [2022-02-20 23:59:11,523 INFO L290 TraceCheckUtils]: 36: Hoare triple {4559#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (or (and (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv1 32)))) (_ bv1 1))) (not (= |#StackHeapBarrier| (_ bv0 32)))) (bvult (_ bv1 32) |#StackHeapBarrier|)))))} assume !(1bv1 == #valid[sll_circular_append_~head#1.base]); {4274#false} is VALID [2022-02-20 23:59:11,523 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-02-20 23:59:11,523 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:11,523 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1752591741] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:11,523 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:59:11,523 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [9] total 15 [2022-02-20 23:59:11,523 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [933115531] [2022-02-20 23:59:11,523 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:11,524 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 37 [2022-02-20 23:59:11,524 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:11,524 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:11,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:11,578 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:59:11,578 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:11,578 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:59:11,578 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=317, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:59:11,579 INFO L87 Difference]: Start difference. First operand 129 states and 141 transitions. Second operand has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:12,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:12,706 INFO L93 Difference]: Finished difference Result 131 states and 143 transitions. [2022-02-20 23:59:12,706 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:59:12,706 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 37 [2022-02-20 23:59:12,706 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:12,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:12,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-02-20 23:59:12,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:12,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-02-20 23:59:12,709 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 135 transitions. [2022-02-20 23:59:12,819 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:12,821 INFO L225 Difference]: With dead ends: 131 [2022-02-20 23:59:12,821 INFO L226 Difference]: Without dead ends: 131 [2022-02-20 23:59:12,821 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 64 SyntacticMatches, 8 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 105 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=85, Invalid=421, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:59:12,821 INFO L933 BasicCegarLoop]: 119 mSDtfsCounter, 3 mSDsluCounter, 316 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 435 SdHoareTripleChecker+Invalid, 309 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 125 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:12,822 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 435 Invalid, 309 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 179 Invalid, 0 Unknown, 125 Unchecked, 0.3s Time] [2022-02-20 23:59:12,822 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-02-20 23:59:12,828 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 128. [2022-02-20 23:59:12,838 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:12,838 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:12,838 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:12,839 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:12,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:12,841 INFO L93 Difference]: Finished difference Result 131 states and 143 transitions. [2022-02-20 23:59:12,841 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 143 transitions. [2022-02-20 23:59:12,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:12,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:12,841 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 131 states. [2022-02-20 23:59:12,842 INFO L87 Difference]: Start difference. First operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 131 states. [2022-02-20 23:59:12,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:12,844 INFO L93 Difference]: Finished difference Result 131 states and 143 transitions. [2022-02-20 23:59:12,844 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 143 transitions. [2022-02-20 23:59:12,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:12,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:12,844 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:12,844 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:12,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 73 states have (on average 1.8082191780821917) internal successors, (132), 122 states have internal predecessors, (132), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:12,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 140 transitions. [2022-02-20 23:59:12,847 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 140 transitions. Word has length 37 [2022-02-20 23:59:12,847 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:12,847 INFO L470 AbstractCegarLoop]: Abstraction has 128 states and 140 transitions. [2022-02-20 23:59:12,847 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 7 states have (on average 2.857142857142857) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:12,847 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 140 transitions. [2022-02-20 23:59:12,848 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 23:59:12,848 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:12,848 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:12,854 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:13,059 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:13,251 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:13,251 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:13,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:13,252 INFO L85 PathProgramCache]: Analyzing trace with hash -342690400, now seen corresponding path program 1 times [2022-02-20 23:59:13,252 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:13,252 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [239946619] [2022-02-20 23:59:13,252 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:13,252 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:13,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:13,253 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:13,254 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2022-02-20 23:59:13,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:13,412 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:59:13,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:13,436 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:13,452 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:13,457 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:13,483 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:13,487 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:15,643 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:15,644 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:15,652 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:59:15,652 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:59:15,705 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:17,900 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:17,901 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:18,358 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:59:18,358 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 18 [2022-02-20 23:59:18,477 INFO L290 TraceCheckUtils]: 0: Hoare triple {5092#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {5092#true} is VALID [2022-02-20 23:59:18,479 INFO L290 TraceCheckUtils]: 1: Hoare triple {5092#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {5100#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,479 INFO L272 TraceCheckUtils]: 2: Hoare triple {5100#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {5104#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,481 INFO L290 TraceCheckUtils]: 3: Hoare triple {5104#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,482 INFO L290 TraceCheckUtils]: 4: Hoare triple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,485 INFO L290 TraceCheckUtils]: 5: Hoare triple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,487 INFO L290 TraceCheckUtils]: 6: Hoare triple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,488 INFO L290 TraceCheckUtils]: 7: Hoare triple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,489 INFO L290 TraceCheckUtils]: 8: Hoare triple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,491 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {5108#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_397 (_ BitVec 32))) (and (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_397)) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {5100#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~#s~0#1.base|)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} #217#return; {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,491 INFO L290 TraceCheckUtils]: 10: Hoare triple {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,492 INFO L290 TraceCheckUtils]: 11: Hoare triple {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,493 INFO L272 TraceCheckUtils]: 12: Hoare triple {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5137#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,494 INFO L290 TraceCheckUtils]: 13: Hoare triple {5137#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,495 INFO L290 TraceCheckUtils]: 14: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,497 INFO L290 TraceCheckUtils]: 15: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,499 INFO L290 TraceCheckUtils]: 17: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:18,509 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} #219#return; {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,510 INFO L290 TraceCheckUtils]: 21: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,511 INFO L290 TraceCheckUtils]: 23: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:18,513 INFO L290 TraceCheckUtils]: 26: Hoare triple {5160#(and (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:18,514 INFO L272 TraceCheckUtils]: 27: Hoare triple {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {5186#(= |#length| |old(#length)|)} is VALID [2022-02-20 23:59:18,515 INFO L290 TraceCheckUtils]: 28: Hoare triple {5186#(= |#length| |old(#length)|)} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,515 INFO L290 TraceCheckUtils]: 29: Hoare triple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,515 INFO L290 TraceCheckUtils]: 30: Hoare triple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,516 INFO L290 TraceCheckUtils]: 31: Hoare triple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,516 INFO L290 TraceCheckUtils]: 32: Hoare triple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,516 INFO L290 TraceCheckUtils]: 33: Hoare triple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} assume true; {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} is VALID [2022-02-20 23:59:18,518 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {5190#(exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (= (store |old(#length)| |node_create_~temp~0#1.base| (_ bv8 32)) |#length|))} {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} #221#return; {5209#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (or (= |ULTIMATE.start_sll_circular_append_~head#1.base| |node_create_~temp~0#1.base|) (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|))))))} is VALID [2022-02-20 23:59:18,519 INFO L290 TraceCheckUtils]: 35: Hoare triple {5209#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (or (= |ULTIMATE.start_sll_circular_append_~head#1.base| |node_create_~temp~0#1.base|) (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|))))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {5209#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (or (= |ULTIMATE.start_sll_circular_append_~head#1.base| |node_create_~temp~0#1.base|) (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|))))))} is VALID [2022-02-20 23:59:18,520 INFO L290 TraceCheckUtils]: 36: Hoare triple {5209#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))) (exists ((|node_create_~temp~0#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (or (= |ULTIMATE.start_sll_circular_append_~head#1.base| |node_create_~temp~0#1.base|) (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|))))))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~head#1.offset), #length[sll_circular_append_~head#1.base]) && ~bvule32(sll_circular_append_~head#1.offset, ~bvadd32(4bv32, sll_circular_append_~head#1.offset))) && ~bvule32(0bv32, sll_circular_append_~head#1.offset)); {5093#false} is VALID [2022-02-20 23:59:18,520 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:59:18,520 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:18,850 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:18,850 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [239946619] [2022-02-20 23:59:18,850 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [239946619] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:18,850 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [952148938] [2022-02-20 23:59:18,850 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:18,850 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:59:18,850 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:59:18,851 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:59:18,853 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (13)] Waiting until timeout for monitored process [2022-02-20 23:59:19,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:19,117 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 23:59:19,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:19,158 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:19,176 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:19,191 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:19,343 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:19,344 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:19,449 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:21,654 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:21,655 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:21,827 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:59:22,004 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:22,006 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:59:22,062 INFO L290 TraceCheckUtils]: 0: Hoare triple {5092#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {5092#true} is VALID [2022-02-20 23:59:22,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {5092#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,064 INFO L272 TraceCheckUtils]: 2: Hoare triple {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {5137#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,065 INFO L290 TraceCheckUtils]: 3: Hoare triple {5137#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,066 INFO L290 TraceCheckUtils]: 4: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,067 INFO L290 TraceCheckUtils]: 5: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,069 INFO L290 TraceCheckUtils]: 6: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,076 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {5127#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} #217#return; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,077 INFO L290 TraceCheckUtils]: 10: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,077 INFO L290 TraceCheckUtils]: 11: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,078 INFO L272 TraceCheckUtils]: 12: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5264#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,079 INFO L290 TraceCheckUtils]: 13: Hoare triple {5264#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,079 INFO L290 TraceCheckUtils]: 14: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,081 INFO L290 TraceCheckUtils]: 15: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,083 INFO L290 TraceCheckUtils]: 16: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,084 INFO L290 TraceCheckUtils]: 17: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,084 INFO L290 TraceCheckUtils]: 18: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,089 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} #219#return; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,090 INFO L290 TraceCheckUtils]: 20: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,091 INFO L290 TraceCheckUtils]: 21: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,091 INFO L290 TraceCheckUtils]: 22: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,092 INFO L290 TraceCheckUtils]: 23: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,092 INFO L290 TraceCheckUtils]: 24: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,093 INFO L290 TraceCheckUtils]: 25: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} is VALID [2022-02-20 23:59:22,093 INFO L290 TraceCheckUtils]: 26: Hoare triple {5254#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (not (= |#StackHeapBarrier| (_ bv0 32))) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#s~0#1.base|)))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {5307#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))} is VALID [2022-02-20 23:59:22,094 INFO L272 TraceCheckUtils]: 27: Hoare triple {5307#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {5264#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,095 INFO L290 TraceCheckUtils]: 28: Hoare triple {5264#(and (= |#length| |old(#length)|) (not (= |#StackHeapBarrier| (_ bv0 32))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,096 INFO L290 TraceCheckUtils]: 29: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,097 INFO L290 TraceCheckUtils]: 30: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,100 INFO L290 TraceCheckUtils]: 32: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,101 INFO L290 TraceCheckUtils]: 33: Hoare triple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:22,113 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {5141#(and (exists ((|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_398 (_ BitVec 32))) (and (= (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_398) |#length|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {5307#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))} #221#return; {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:22,114 INFO L290 TraceCheckUtils]: 35: Hoare triple {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} is VALID [2022-02-20 23:59:22,115 INFO L290 TraceCheckUtils]: 36: Hoare triple {5182#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= |#StackHeapBarrier| (_ bv0 32))))))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~head#1.offset), #length[sll_circular_append_~head#1.base]) && ~bvule32(sll_circular_append_~head#1.offset, ~bvadd32(4bv32, sll_circular_append_~head#1.offset))) && ~bvule32(0bv32, sll_circular_append_~head#1.offset)); {5093#false} is VALID [2022-02-20 23:59:22,115 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-02-20 23:59:22,115 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:22,115 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [952148938] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:22,115 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:59:22,115 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [12] total 15 [2022-02-20 23:59:22,115 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1468362669] [2022-02-20 23:59:22,115 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:22,116 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 37 [2022-02-20 23:59:22,116 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:22,116 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:22,166 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:22,167 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:59:22,167 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:22,167 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:59:22,167 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=253, Unknown=3, NotChecked=0, Total=306 [2022-02-20 23:59:22,167 INFO L87 Difference]: Start difference. First operand 128 states and 140 transitions. Second operand has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:24,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:24,230 INFO L93 Difference]: Finished difference Result 128 states and 140 transitions. [2022-02-20 23:59:24,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:59:24,230 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 37 [2022-02-20 23:59:24,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:24,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:24,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 132 transitions. [2022-02-20 23:59:24,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:24,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 132 transitions. [2022-02-20 23:59:24,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 132 transitions. [2022-02-20 23:59:24,383 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:24,385 INFO L225 Difference]: With dead ends: 128 [2022-02-20 23:59:24,385 INFO L226 Difference]: Without dead ends: 128 [2022-02-20 23:59:24,385 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 56 SyntacticMatches, 3 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 6.8s TimeCoverageRelationStatistics Valid=59, Invalid=280, Unknown=3, NotChecked=0, Total=342 [2022-02-20 23:59:24,385 INFO L933 BasicCegarLoop]: 119 mSDtfsCounter, 10 mSDsluCounter, 460 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 579 SdHoareTripleChecker+Invalid, 395 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 113 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:24,386 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 579 Invalid, 395 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 280 Invalid, 0 Unknown, 113 Unchecked, 0.6s Time] [2022-02-20 23:59:24,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-02-20 23:59:24,387 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 127. [2022-02-20 23:59:24,388 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:24,388 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:24,388 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:24,390 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:24,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:24,395 INFO L93 Difference]: Finished difference Result 128 states and 140 transitions. [2022-02-20 23:59:24,395 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 140 transitions. [2022-02-20 23:59:24,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:24,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:24,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 128 states. [2022-02-20 23:59:24,396 INFO L87 Difference]: Start difference. First operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 128 states. [2022-02-20 23:59:24,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:24,398 INFO L93 Difference]: Finished difference Result 128 states and 140 transitions. [2022-02-20 23:59:24,398 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 140 transitions. [2022-02-20 23:59:24,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:24,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:24,398 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:24,398 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:24,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 73 states have (on average 1.7945205479452055) internal successors, (131), 121 states have internal predecessors, (131), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:59:24,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 139 transitions. [2022-02-20 23:59:24,400 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 139 transitions. Word has length 37 [2022-02-20 23:59:24,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:24,400 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 139 transitions. [2022-02-20 23:59:24,400 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:24,400 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 139 transitions. [2022-02-20 23:59:24,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 23:59:24,402 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:24,402 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:24,418 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:24,626 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Ended with exit code 0 [2022-02-20 23:59:24,826 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:24,826 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:24,827 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:24,827 INFO L85 PathProgramCache]: Analyzing trace with hash 787240884, now seen corresponding path program 2 times [2022-02-20 23:59:24,827 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:24,827 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [421900709] [2022-02-20 23:59:24,827 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:59:24,827 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:24,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:24,828 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:24,830 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2022-02-20 23:59:24,945 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:59:24,945 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:59:24,951 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:59:24,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:24,967 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:25,068 INFO L290 TraceCheckUtils]: 0: Hoare triple {5850#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 1: Hoare triple {5850#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,070 INFO L272 TraceCheckUtils]: 2: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 3: Hoare triple {5850#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 4: Hoare triple {5850#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {5850#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 6: Hoare triple {5850#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5850#true} is VALID [2022-02-20 23:59:25,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {5850#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {5850#true} assume true; {5850#true} is VALID [2022-02-20 23:59:25,071 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {5850#true} {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} #217#return; {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,072 INFO L272 TraceCheckUtils]: 12: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5850#true} is VALID [2022-02-20 23:59:25,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {5850#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {5850#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5850#true} is VALID [2022-02-20 23:59:25,072 INFO L290 TraceCheckUtils]: 15: Hoare triple {5850#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5850#true} is VALID [2022-02-20 23:59:25,073 INFO L290 TraceCheckUtils]: 16: Hoare triple {5850#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5850#true} is VALID [2022-02-20 23:59:25,073 INFO L290 TraceCheckUtils]: 17: Hoare triple {5850#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,073 INFO L290 TraceCheckUtils]: 18: Hoare triple {5850#true} assume true; {5850#true} is VALID [2022-02-20 23:59:25,073 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5850#true} {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} #219#return; {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,074 INFO L290 TraceCheckUtils]: 20: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,074 INFO L290 TraceCheckUtils]: 21: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} is VALID [2022-02-20 23:59:25,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {5858#(= (_ bv2 32) |ULTIMATE.start_sll_circular_create_~len#1|)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {5922#(= (_ bv2 32) (bvadd |ULTIMATE.start_sll_circular_create_~len#1| (_ bv1 32)))} is VALID [2022-02-20 23:59:25,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {5922#(= (_ bv2 32) (bvadd |ULTIMATE.start_sll_circular_create_~len#1| (_ bv1 32)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {5851#false} is VALID [2022-02-20 23:59:25,075 INFO L272 TraceCheckUtils]: 24: Hoare triple {5851#false} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5851#false} is VALID [2022-02-20 23:59:25,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {5851#false} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5851#false} is VALID [2022-02-20 23:59:25,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {5851#false} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5851#false} is VALID [2022-02-20 23:59:25,075 INFO L290 TraceCheckUtils]: 27: Hoare triple {5851#false} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5851#false} is VALID [2022-02-20 23:59:25,075 INFO L290 TraceCheckUtils]: 28: Hoare triple {5851#false} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 29: Hoare triple {5851#false} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 30: Hoare triple {5851#false} assume true; {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5851#false} {5851#false} #219#return; {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 32: Hoare triple {5851#false} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 33: Hoare triple {5851#false} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 34: Hoare triple {5851#false} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {5851#false} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {5851#false} is VALID [2022-02-20 23:59:25,076 INFO L290 TraceCheckUtils]: 36: Hoare triple {5851#false} assume !((~bvule32(~bvadd32(4bv32, sll_circular_create_~last~0#1.offset), #length[sll_circular_create_~last~0#1.base]) && ~bvule32(sll_circular_create_~last~0#1.offset, ~bvadd32(4bv32, sll_circular_create_~last~0#1.offset))) && ~bvule32(0bv32, sll_circular_create_~last~0#1.offset)); {5851#false} is VALID [2022-02-20 23:59:25,077 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 20 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:59:25,077 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:25,223 INFO L290 TraceCheckUtils]: 36: Hoare triple {5851#false} assume !((~bvule32(~bvadd32(4bv32, sll_circular_create_~last~0#1.offset), #length[sll_circular_create_~last~0#1.base]) && ~bvule32(sll_circular_create_~last~0#1.offset, ~bvadd32(4bv32, sll_circular_create_~last~0#1.offset))) && ~bvule32(0bv32, sll_circular_create_~last~0#1.offset)); {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 35: Hoare triple {5851#false} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 34: Hoare triple {5851#false} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 33: Hoare triple {5851#false} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 32: Hoare triple {5851#false} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5850#true} {5851#false} #219#return; {5851#false} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 30: Hoare triple {5850#true} assume true; {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 29: Hoare triple {5850#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 28: Hoare triple {5850#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {5850#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {5850#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {5850#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,224 INFO L272 TraceCheckUtils]: 24: Hoare triple {5851#false} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5850#true} is VALID [2022-02-20 23:59:25,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {6004#(not (bvsgt |ULTIMATE.start_sll_circular_create_~len#1| (_ bv1 32)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {5851#false} is VALID [2022-02-20 23:59:25,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {6004#(not (bvsgt |ULTIMATE.start_sll_circular_create_~len#1| (_ bv1 32)))} is VALID [2022-02-20 23:59:25,225 INFO L290 TraceCheckUtils]: 21: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,225 INFO L290 TraceCheckUtils]: 20: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,226 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5850#true} {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} #219#return; {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 18: Hoare triple {5850#true} assume true; {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 17: Hoare triple {5850#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 16: Hoare triple {5850#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 15: Hoare triple {5850#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 14: Hoare triple {5850#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {5850#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,226 INFO L272 TraceCheckUtils]: 12: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {5850#true} is VALID [2022-02-20 23:59:25,227 INFO L290 TraceCheckUtils]: 11: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,227 INFO L290 TraceCheckUtils]: 10: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,228 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {5850#true} {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} #217#return; {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 8: Hoare triple {5850#true} assume true; {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 7: Hoare triple {5850#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 6: Hoare triple {5850#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 5: Hoare triple {5850#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 4: Hoare triple {5850#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L290 TraceCheckUtils]: 3: Hoare triple {5850#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {5850#true} is VALID [2022-02-20 23:59:25,228 INFO L272 TraceCheckUtils]: 2: Hoare triple {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {5850#true} is VALID [2022-02-20 23:59:25,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {5850#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {6008#(not (bvsgt (bvadd (_ bv4294967295 32) |ULTIMATE.start_sll_circular_create_~len#1|) (_ bv1 32)))} is VALID [2022-02-20 23:59:25,232 INFO L290 TraceCheckUtils]: 0: Hoare triple {5850#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {5850#true} is VALID [2022-02-20 23:59:25,232 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 1 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-20 23:59:25,232 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:25,232 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [421900709] [2022-02-20 23:59:25,232 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [421900709] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:59:25,232 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:59:25,232 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2022-02-20 23:59:25,232 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1830064742] [2022-02-20 23:59:25,232 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:59:25,233 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 37 [2022-02-20 23:59:25,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:25,234 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:59:25,276 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:25,276 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:59:25,276 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:25,276 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:59:25,276 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:59:25,276 INFO L87 Difference]: Start difference. First operand 127 states and 139 transitions. Second operand has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:59:25,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:25,710 INFO L93 Difference]: Finished difference Result 120 states and 129 transitions. [2022-02-20 23:59:25,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:59:25,710 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 37 [2022-02-20 23:59:25,710 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:25,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:59:25,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 130 transitions. [2022-02-20 23:59:25,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:59:25,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 130 transitions. [2022-02-20 23:59:25,712 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 130 transitions. [2022-02-20 23:59:25,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:25,825 INFO L225 Difference]: With dead ends: 120 [2022-02-20 23:59:25,825 INFO L226 Difference]: Without dead ends: 120 [2022-02-20 23:59:25,825 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 68 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:59:25,826 INFO L933 BasicCegarLoop]: 126 mSDtfsCounter, 330 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 331 SdHoareTripleChecker+Valid, 258 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:25,826 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [331 Valid, 258 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:59:25,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2022-02-20 23:59:25,828 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 120. [2022-02-20 23:59:25,828 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:25,828 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:25,828 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:25,828 INFO L87 Difference]: Start difference. First operand 120 states. Second operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:25,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:25,830 INFO L93 Difference]: Finished difference Result 120 states and 129 transitions. [2022-02-20 23:59:25,830 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 129 transitions. [2022-02-20 23:59:25,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:25,830 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:25,830 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 120 states. [2022-02-20 23:59:25,830 INFO L87 Difference]: Start difference. First operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 120 states. [2022-02-20 23:59:25,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:25,832 INFO L93 Difference]: Finished difference Result 120 states and 129 transitions. [2022-02-20 23:59:25,832 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 129 transitions. [2022-02-20 23:59:25,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:25,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:25,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:25,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:25,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 68 states have (on average 1.8088235294117647) internal successors, (123), 115 states have internal predecessors, (123), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:25,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 129 transitions. [2022-02-20 23:59:25,833 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 129 transitions. Word has length 37 [2022-02-20 23:59:25,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:25,834 INFO L470 AbstractCegarLoop]: Abstraction has 120 states and 129 transitions. [2022-02-20 23:59:25,834 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 5.333333333333333) internal successors, (32), 6 states have internal predecessors, (32), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:59:25,834 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 129 transitions. [2022-02-20 23:59:25,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:59:25,834 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:25,834 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:25,857 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:26,056 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:26,056 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:26,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:26,056 INFO L85 PathProgramCache]: Analyzing trace with hash 1387006624, now seen corresponding path program 1 times [2022-02-20 23:59:26,057 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:26,057 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1465239683] [2022-02-20 23:59:26,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:26,057 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:26,057 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:26,059 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:26,085 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2022-02-20 23:59:26,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:26,226 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:59:26,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:26,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:26,297 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 0: Hoare triple {6554#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {6554#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L272 TraceCheckUtils]: 2: Hoare triple {6554#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 3: Hoare triple {6554#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 4: Hoare triple {6554#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 5: Hoare triple {6554#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {6554#true} is VALID [2022-02-20 23:59:26,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {6554#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {6554#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {6554#true} assume true; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {6554#true} {6554#true} #217#return; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 10: Hoare triple {6554#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 11: Hoare triple {6554#true} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L272 TraceCheckUtils]: 12: Hoare triple {6554#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {6554#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 14: Hoare triple {6554#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {6554#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {6554#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {6554#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {6554#true} assume true; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6554#true} {6554#true} #219#return; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 20: Hoare triple {6554#true} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 21: Hoare triple {6554#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 22: Hoare triple {6554#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 23: Hoare triple {6554#true} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 24: Hoare triple {6554#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {6554#true} is VALID [2022-02-20 23:59:26,347 INFO L290 TraceCheckUtils]: 25: Hoare triple {6554#true} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {6554#true} is VALID [2022-02-20 23:59:26,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {6554#true} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {6554#true} is VALID [2022-02-20 23:59:26,350 INFO L272 TraceCheckUtils]: 27: Hoare triple {6554#true} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {6554#true} is VALID [2022-02-20 23:59:26,351 INFO L290 TraceCheckUtils]: 28: Hoare triple {6554#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,351 INFO L290 TraceCheckUtils]: 29: Hoare triple {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,352 INFO L290 TraceCheckUtils]: 30: Hoare triple {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,352 INFO L290 TraceCheckUtils]: 31: Hoare triple {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,352 INFO L290 TraceCheckUtils]: 32: Hoare triple {6643#(= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {6656#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,353 INFO L290 TraceCheckUtils]: 33: Hoare triple {6656#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} assume true; {6656#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,353 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {6656#(= (select |#valid| |node_create_#res#1.base|) (_ bv1 1))} {6554#true} #221#return; {6663#(= (select |#valid| |ULTIMATE.start_sll_circular_append_#t~ret9#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {6663#(= (select |#valid| |ULTIMATE.start_sll_circular_append_#t~ret9#1.base|) (_ bv1 1))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,354 INFO L290 TraceCheckUtils]: 36: Hoare triple {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,354 INFO L290 TraceCheckUtils]: 37: Hoare triple {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} assume 0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset;havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:59:26,354 INFO L290 TraceCheckUtils]: 38: Hoare triple {6667#(= (select |#valid| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[sll_circular_append_~new_last~0#1.base]); {6555#false} is VALID [2022-02-20 23:59:26,355 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-20 23:59:26,355 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:26,355 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:26,355 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1465239683] [2022-02-20 23:59:26,355 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1465239683] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:26,355 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:59:26,355 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:59:26,355 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1597299039] [2022-02-20 23:59:26,355 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:26,355 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:26,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:26,356 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:26,384 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:26,384 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:59:26,384 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:26,384 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:59:26,384 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:59:26,384 INFO L87 Difference]: Start difference. First operand 120 states and 129 transitions. Second operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:27,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:27,547 INFO L93 Difference]: Finished difference Result 136 states and 146 transitions. [2022-02-20 23:59:27,547 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:59:27,547 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:27,547 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:27,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:27,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 148 transitions. [2022-02-20 23:59:27,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:27,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 148 transitions. [2022-02-20 23:59:27,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 148 transitions. [2022-02-20 23:59:27,674 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:27,675 INFO L225 Difference]: With dead ends: 136 [2022-02-20 23:59:27,675 INFO L226 Difference]: Without dead ends: 136 [2022-02-20 23:59:27,675 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:59:27,676 INFO L933 BasicCegarLoop]: 76 mSDtfsCounter, 99 mSDsluCounter, 220 mSDsCounter, 0 mSdLazyCounter, 246 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 99 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 247 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 246 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:27,676 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [99 Valid, 296 Invalid, 247 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 246 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:59:27,676 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-02-20 23:59:27,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 118. [2022-02-20 23:59:27,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:27,678 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:27,678 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:27,678 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:27,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:27,685 INFO L93 Difference]: Finished difference Result 136 states and 146 transitions. [2022-02-20 23:59:27,685 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 146 transitions. [2022-02-20 23:59:27,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:27,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:27,686 INFO L74 IsIncluded]: Start isIncluded. First operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 136 states. [2022-02-20 23:59:27,690 INFO L87 Difference]: Start difference. First operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 136 states. [2022-02-20 23:59:27,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:27,691 INFO L93 Difference]: Finished difference Result 136 states and 146 transitions. [2022-02-20 23:59:27,692 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 146 transitions. [2022-02-20 23:59:27,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:27,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:27,692 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:27,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:27,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 118 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 113 states have internal predecessors, (121), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:27,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 127 transitions. [2022-02-20 23:59:27,694 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 127 transitions. Word has length 39 [2022-02-20 23:59:27,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:27,694 INFO L470 AbstractCegarLoop]: Abstraction has 118 states and 127 transitions. [2022-02-20 23:59:27,694 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:27,694 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 127 transitions. [2022-02-20 23:59:27,695 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:59:27,695 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:27,695 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:27,715 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Ended with exit code 0 [2022-02-20 23:59:27,902 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:27,903 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:27,903 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:27,903 INFO L85 PathProgramCache]: Analyzing trace with hash 1387006625, now seen corresponding path program 1 times [2022-02-20 23:59:27,904 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:27,904 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1433361283] [2022-02-20 23:59:27,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:27,904 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:27,904 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:27,905 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:27,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2022-02-20 23:59:28,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:28,029 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:59:28,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:28,044 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:28,129 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:28,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {7204#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {7204#true} is VALID [2022-02-20 23:59:28,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {7204#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {7204#true} is VALID [2022-02-20 23:59:28,230 INFO L272 TraceCheckUtils]: 2: Hoare triple {7204#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {7204#true} is VALID [2022-02-20 23:59:28,230 INFO L290 TraceCheckUtils]: 3: Hoare triple {7204#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,230 INFO L290 TraceCheckUtils]: 4: Hoare triple {7204#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7204#true} is VALID [2022-02-20 23:59:28,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {7204#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7204#true} is VALID [2022-02-20 23:59:28,231 INFO L290 TraceCheckUtils]: 6: Hoare triple {7204#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7204#true} is VALID [2022-02-20 23:59:28,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {7204#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,231 INFO L290 TraceCheckUtils]: 8: Hoare triple {7204#true} assume true; {7204#true} is VALID [2022-02-20 23:59:28,231 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {7204#true} {7204#true} #217#return; {7204#true} is VALID [2022-02-20 23:59:28,231 INFO L290 TraceCheckUtils]: 10: Hoare triple {7204#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 11: Hoare triple {7204#true} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L272 TraceCheckUtils]: 12: Hoare triple {7204#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 13: Hoare triple {7204#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {7204#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 15: Hoare triple {7204#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 16: Hoare triple {7204#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 17: Hoare triple {7204#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {7204#true} assume true; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {7204#true} {7204#true} #219#return; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 20: Hoare triple {7204#true} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,232 INFO L290 TraceCheckUtils]: 21: Hoare triple {7204#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {7204#true} is VALID [2022-02-20 23:59:28,233 INFO L290 TraceCheckUtils]: 22: Hoare triple {7204#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {7204#true} is VALID [2022-02-20 23:59:28,233 INFO L290 TraceCheckUtils]: 23: Hoare triple {7204#true} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {7204#true} is VALID [2022-02-20 23:59:28,233 INFO L290 TraceCheckUtils]: 24: Hoare triple {7204#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {7204#true} is VALID [2022-02-20 23:59:28,233 INFO L290 TraceCheckUtils]: 25: Hoare triple {7204#true} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {7204#true} is VALID [2022-02-20 23:59:28,233 INFO L290 TraceCheckUtils]: 26: Hoare triple {7204#true} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {7204#true} is VALID [2022-02-20 23:59:28,234 INFO L272 TraceCheckUtils]: 27: Hoare triple {7204#true} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {7204#true} is VALID [2022-02-20 23:59:28,248 INFO L290 TraceCheckUtils]: 28: Hoare triple {7204#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:28,248 INFO L290 TraceCheckUtils]: 29: Hoare triple {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:28,249 INFO L290 TraceCheckUtils]: 30: Hoare triple {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:28,249 INFO L290 TraceCheckUtils]: 31: Hoare triple {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} is VALID [2022-02-20 23:59:28,250 INFO L290 TraceCheckUtils]: 32: Hoare triple {7293#(and (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7306#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} is VALID [2022-02-20 23:59:28,250 INFO L290 TraceCheckUtils]: 33: Hoare triple {7306#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} assume true; {7306#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} is VALID [2022-02-20 23:59:28,251 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7306#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)))} {7204#true} #221#return; {7313#(and (= |ULTIMATE.start_sll_circular_append_#t~ret9#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~ret9#1.base|)))} is VALID [2022-02-20 23:59:28,251 INFO L290 TraceCheckUtils]: 35: Hoare triple {7313#(and (= |ULTIMATE.start_sll_circular_append_#t~ret9#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~ret9#1.base|)))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} is VALID [2022-02-20 23:59:28,251 INFO L290 TraceCheckUtils]: 36: Hoare triple {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} is VALID [2022-02-20 23:59:28,252 INFO L290 TraceCheckUtils]: 37: Hoare triple {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} assume 0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset;havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} is VALID [2022-02-20 23:59:28,252 INFO L290 TraceCheckUtils]: 38: Hoare triple {7317#(and (= |ULTIMATE.start_sll_circular_append_~new_last~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~new_last~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~new_last~0#1.offset), #length[sll_circular_append_~new_last~0#1.base]) && ~bvule32(sll_circular_append_~new_last~0#1.offset, ~bvadd32(4bv32, sll_circular_append_~new_last~0#1.offset))) && ~bvule32(0bv32, sll_circular_append_~new_last~0#1.offset)); {7205#false} is VALID [2022-02-20 23:59:28,252 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-20 23:59:28,252 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:28,252 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:28,253 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1433361283] [2022-02-20 23:59:28,253 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1433361283] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:28,253 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:59:28,253 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:59:28,253 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1617072524] [2022-02-20 23:59:28,253 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:28,253 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:28,253 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:28,253 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:28,281 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:28,281 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:59:28,282 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:28,282 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:59:28,282 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:59:28,282 INFO L87 Difference]: Start difference. First operand 118 states and 127 transitions. Second operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:29,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:29,700 INFO L93 Difference]: Finished difference Result 116 states and 125 transitions. [2022-02-20 23:59:29,700 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:59:29,700 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:29,700 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:29,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:29,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 127 transitions. [2022-02-20 23:59:29,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:29,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 127 transitions. [2022-02-20 23:59:29,702 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 127 transitions. [2022-02-20 23:59:29,836 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:29,837 INFO L225 Difference]: With dead ends: 116 [2022-02-20 23:59:29,837 INFO L226 Difference]: Without dead ends: 116 [2022-02-20 23:59:29,837 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:59:29,838 INFO L933 BasicCegarLoop]: 81 mSDtfsCounter, 101 mSDsluCounter, 226 mSDsCounter, 0 mSdLazyCounter, 207 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 101 SdHoareTripleChecker+Valid, 307 SdHoareTripleChecker+Invalid, 208 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 207 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:29,838 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [101 Valid, 307 Invalid, 208 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 207 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:59:29,838 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-02-20 23:59:29,839 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 116. [2022-02-20 23:59:29,839 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:29,839 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:29,840 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:29,840 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:29,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:29,841 INFO L93 Difference]: Finished difference Result 116 states and 125 transitions. [2022-02-20 23:59:29,841 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 125 transitions. [2022-02-20 23:59:29,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:29,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:29,841 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 116 states. [2022-02-20 23:59:29,842 INFO L87 Difference]: Start difference. First operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 116 states. [2022-02-20 23:59:29,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:29,844 INFO L93 Difference]: Finished difference Result 116 states and 125 transitions. [2022-02-20 23:59:29,844 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 125 transitions. [2022-02-20 23:59:29,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:29,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:29,845 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:29,845 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:29,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 68 states have (on average 1.75) internal successors, (119), 111 states have internal predecessors, (119), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:29,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 125 transitions. [2022-02-20 23:59:29,851 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 125 transitions. Word has length 39 [2022-02-20 23:59:29,851 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:29,851 INFO L470 AbstractCegarLoop]: Abstraction has 116 states and 125 transitions. [2022-02-20 23:59:29,851 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:29,851 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 125 transitions. [2022-02-20 23:59:29,851 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:59:29,852 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:29,852 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:29,863 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:30,061 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:30,061 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr10REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:30,062 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:30,062 INFO L85 PathProgramCache]: Analyzing trace with hash 1387006880, now seen corresponding path program 1 times [2022-02-20 23:59:30,062 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:30,062 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [608350060] [2022-02-20 23:59:30,062 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:30,062 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:30,062 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:30,063 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:30,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2022-02-20 23:59:30,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:30,186 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 2 conjunts are in the unsatisfiable core [2022-02-20 23:59:30,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:30,201 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:30,277 INFO L290 TraceCheckUtils]: 0: Hoare triple {7792#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 1: Hoare triple {7792#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L272 TraceCheckUtils]: 2: Hoare triple {7792#true} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 3: Hoare triple {7792#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 4: Hoare triple {7792#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {7792#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 6: Hoare triple {7792#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 7: Hoare triple {7792#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,278 INFO L290 TraceCheckUtils]: 8: Hoare triple {7792#true} assume true; {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {7792#true} {7792#true} #217#return; {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 10: Hoare triple {7792#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 11: Hoare triple {7792#true} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L272 TraceCheckUtils]: 12: Hoare triple {7792#true} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 13: Hoare triple {7792#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 14: Hoare triple {7792#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 15: Hoare triple {7792#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 16: Hoare triple {7792#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7792#true} is VALID [2022-02-20 23:59:30,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {7792#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 18: Hoare triple {7792#true} assume true; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {7792#true} {7792#true} #219#return; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 20: Hoare triple {7792#true} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 21: Hoare triple {7792#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 22: Hoare triple {7792#true} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 23: Hoare triple {7792#true} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 24: Hoare triple {7792#true} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {7792#true} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,280 INFO L290 TraceCheckUtils]: 26: Hoare triple {7792#true} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L272 TraceCheckUtils]: 27: Hoare triple {7792#true} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 28: Hoare triple {7792#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 29: Hoare triple {7792#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 30: Hoare triple {7792#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 31: Hoare triple {7792#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 32: Hoare triple {7792#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L290 TraceCheckUtils]: 33: Hoare triple {7792#true} assume true; {7792#true} is VALID [2022-02-20 23:59:30,281 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7792#true} {7792#true} #221#return; {7792#true} is VALID [2022-02-20 23:59:30,282 INFO L290 TraceCheckUtils]: 35: Hoare triple {7792#true} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {7792#true} is VALID [2022-02-20 23:59:30,282 INFO L290 TraceCheckUtils]: 36: Hoare triple {7792#true} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {7905#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|))} is VALID [2022-02-20 23:59:30,282 INFO L290 TraceCheckUtils]: 37: Hoare triple {7905#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {7905#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|))} is VALID [2022-02-20 23:59:30,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {7905#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_sll_circular_append_~head#1.base|))} assume !(1bv1 == #valid[sll_circular_append_~head#1.base]); {7793#false} is VALID [2022-02-20 23:59:30,283 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 23:59:30,283 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:30,283 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:30,283 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [608350060] [2022-02-20 23:59:30,283 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [608350060] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:30,284 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:59:30,284 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:59:30,284 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [466026856] [2022-02-20 23:59:30,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:30,284 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:30,284 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:30,285 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:30,309 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:30,309 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:59:30,309 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:30,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:59:30,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:59:30,310 INFO L87 Difference]: Start difference. First operand 116 states and 125 transitions. Second operand has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:30,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:30,617 INFO L93 Difference]: Finished difference Result 130 states and 140 transitions. [2022-02-20 23:59:30,617 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:59:30,617 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 39 [2022-02-20 23:59:30,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:30,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:30,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:59:30,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:30,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:59:30,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 144 transitions. [2022-02-20 23:59:30,741 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:30,742 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:59:30,742 INFO L226 Difference]: Without dead ends: 130 [2022-02-20 23:59:30,742 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:59:30,743 INFO L933 BasicCegarLoop]: 78 mSDtfsCounter, 91 mSDsluCounter, 28 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:30,743 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 106 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:59:30,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-02-20 23:59:30,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 112. [2022-02-20 23:59:30,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:30,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:30,745 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:30,745 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:30,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:30,747 INFO L93 Difference]: Finished difference Result 130 states and 140 transitions. [2022-02-20 23:59:30,747 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 140 transitions. [2022-02-20 23:59:30,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:30,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:30,747 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 130 states. [2022-02-20 23:59:30,747 INFO L87 Difference]: Start difference. First operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 130 states. [2022-02-20 23:59:30,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:30,749 INFO L93 Difference]: Finished difference Result 130 states and 140 transitions. [2022-02-20 23:59:30,749 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 140 transitions. [2022-02-20 23:59:30,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:30,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:30,749 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:30,749 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:30,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 68 states have (on average 1.6911764705882353) internal successors, (115), 107 states have internal predecessors, (115), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:30,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 121 transitions. [2022-02-20 23:59:30,752 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 121 transitions. Word has length 39 [2022-02-20 23:59:30,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:30,752 INFO L470 AbstractCegarLoop]: Abstraction has 112 states and 121 transitions. [2022-02-20 23:59:30,752 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 10.5) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 23:59:30,752 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 121 transitions. [2022-02-20 23:59:30,752 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:59:30,752 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:30,752 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:30,764 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:30,960 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:30,960 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:30,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:30,960 INFO L85 PathProgramCache]: Analyzing trace with hash 1387006881, now seen corresponding path program 1 times [2022-02-20 23:59:30,961 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:30,961 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1589470334] [2022-02-20 23:59:30,961 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:30,961 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:30,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:30,962 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:30,964 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Waiting until timeout for monitored process [2022-02-20 23:59:31,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:31,083 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:59:31,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:31,098 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 0: Hoare triple {8413#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {8413#true} is VALID [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {8413#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,204 INFO L272 TraceCheckUtils]: 2: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {8413#true} is VALID [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 3: Hoare triple {8413#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 4: Hoare triple {8413#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {8413#true} is VALID [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 5: Hoare triple {8413#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {8413#true} is VALID [2022-02-20 23:59:31,204 INFO L290 TraceCheckUtils]: 6: Hoare triple {8413#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {8413#true} is VALID [2022-02-20 23:59:31,205 INFO L290 TraceCheckUtils]: 7: Hoare triple {8413#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,205 INFO L290 TraceCheckUtils]: 8: Hoare triple {8413#true} assume true; {8413#true} is VALID [2022-02-20 23:59:31,205 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {8413#true} {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} #217#return; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 10: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 11: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,206 INFO L272 TraceCheckUtils]: 12: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 13: Hoare triple {8413#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 14: Hoare triple {8413#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 15: Hoare triple {8413#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 16: Hoare triple {8413#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 17: Hoare triple {8413#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {8413#true} assume true; {8413#true} is VALID [2022-02-20 23:59:31,207 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8413#true} {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} #219#return; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,207 INFO L290 TraceCheckUtils]: 20: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,207 INFO L290 TraceCheckUtils]: 21: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,208 INFO L290 TraceCheckUtils]: 24: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 25: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 26: Hoare triple {8421#(= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,209 INFO L272 TraceCheckUtils]: 27: Hoare triple {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 28: Hoare triple {8413#true} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 29: Hoare triple {8413#true} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {8413#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {8413#true} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 32: Hoare triple {8413#true} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {8413#true} is VALID [2022-02-20 23:59:31,209 INFO L290 TraceCheckUtils]: 33: Hoare triple {8413#true} assume true; {8413#true} is VALID [2022-02-20 23:59:31,210 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8413#true} {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} #221#return; {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:59:31,211 INFO L290 TraceCheckUtils]: 36: Hoare triple {8497#(= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {8528#(and (bvule (bvadd |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:31,211 INFO L290 TraceCheckUtils]: 37: Hoare triple {8528#(and (bvule (bvadd |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {8528#(and (bvule (bvadd |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:31,212 INFO L290 TraceCheckUtils]: 38: Hoare triple {8528#(and (bvule (bvadd |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sll_circular_append_~head#1.base|)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~head#1.offset), #length[sll_circular_append_~head#1.base]) && ~bvule32(sll_circular_append_~head#1.offset, ~bvadd32(4bv32, sll_circular_append_~head#1.offset))) && ~bvule32(0bv32, sll_circular_append_~head#1.offset)); {8414#false} is VALID [2022-02-20 23:59:31,212 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 23:59:31,212 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:59:31,212 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:31,212 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1589470334] [2022-02-20 23:59:31,212 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1589470334] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:59:31,212 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:59:31,212 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:59:31,212 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [915160343] [2022-02-20 23:59:31,212 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:59:31,213 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-02-20 23:59:31,213 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:31,213 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:31,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:31,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:59:31,239 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:31,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:59:31,239 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:59:31,239 INFO L87 Difference]: Start difference. First operand 112 states and 121 transitions. Second operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:31,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:31,636 INFO L93 Difference]: Finished difference Result 108 states and 117 transitions. [2022-02-20 23:59:31,636 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:59:31,636 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-02-20 23:59:31,636 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:31,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:31,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 121 transitions. [2022-02-20 23:59:31,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:31,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 121 transitions. [2022-02-20 23:59:31,639 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 121 transitions. [2022-02-20 23:59:31,784 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:31,785 INFO L225 Difference]: With dead ends: 108 [2022-02-20 23:59:31,785 INFO L226 Difference]: Without dead ends: 108 [2022-02-20 23:59:31,785 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:59:31,785 INFO L933 BasicCegarLoop]: 81 mSDtfsCounter, 186 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 186 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:31,785 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [186 Valid, 128 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:59:31,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-02-20 23:59:31,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 108. [2022-02-20 23:59:31,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:31,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:31,787 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:31,787 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:31,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:31,789 INFO L93 Difference]: Finished difference Result 108 states and 117 transitions. [2022-02-20 23:59:31,789 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 117 transitions. [2022-02-20 23:59:31,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:31,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:31,789 INFO L74 IsIncluded]: Start isIncluded. First operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 108 states. [2022-02-20 23:59:31,790 INFO L87 Difference]: Start difference. First operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 108 states. [2022-02-20 23:59:31,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:31,791 INFO L93 Difference]: Finished difference Result 108 states and 117 transitions. [2022-02-20 23:59:31,791 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 117 transitions. [2022-02-20 23:59:31,791 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:31,791 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:31,791 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:31,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:31,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 108 states, 68 states have (on average 1.6323529411764706) internal successors, (111), 103 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:31,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 117 transitions. [2022-02-20 23:59:31,793 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 117 transitions. Word has length 39 [2022-02-20 23:59:31,793 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:31,793 INFO L470 AbstractCegarLoop]: Abstraction has 108 states and 117 transitions. [2022-02-20 23:59:31,793 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:59:31,793 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 117 transitions. [2022-02-20 23:59:31,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:59:31,794 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:31,794 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:31,805 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:32,006 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:32,006 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:32,006 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:32,006 INFO L85 PathProgramCache]: Analyzing trace with hash 1473750501, now seen corresponding path program 1 times [2022-02-20 23:59:32,006 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:32,007 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [370118719] [2022-02-20 23:59:32,007 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:32,007 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:32,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:32,008 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:32,022 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2022-02-20 23:59:32,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:32,203 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 26 conjunts are in the unsatisfiable core [2022-02-20 23:59:32,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:32,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:32,278 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:32,458 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:32,538 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 8 [2022-02-20 23:59:32,853 INFO L356 Elim1Store]: treesize reduction 27, result has 43.8 percent of original size [2022-02-20 23:59:32,854 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 25 treesize of output 36 [2022-02-20 23:59:32,877 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:32,878 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 28 [2022-02-20 23:59:33,204 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 17 [2022-02-20 23:59:33,304 INFO L290 TraceCheckUtils]: 0: Hoare triple {8970#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {8970#true} is VALID [2022-02-20 23:59:33,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {8970#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:33,305 INFO L272 TraceCheckUtils]: 2: Hoare triple {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,306 INFO L290 TraceCheckUtils]: 3: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,306 INFO L290 TraceCheckUtils]: 4: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,306 INFO L290 TraceCheckUtils]: 5: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,306 INFO L290 TraceCheckUtils]: 6: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,307 INFO L290 TraceCheckUtils]: 7: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,307 INFO L290 TraceCheckUtils]: 8: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume true; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,308 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} #217#return; {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:33,308 INFO L290 TraceCheckUtils]: 10: Hoare triple {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:33,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:33,309 INFO L272 TraceCheckUtils]: 12: Hoare triple {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:33,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,310 INFO L290 TraceCheckUtils]: 14: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,310 INFO L290 TraceCheckUtils]: 15: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:33,312 INFO L290 TraceCheckUtils]: 18: Hoare triple {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:33,312 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {8978#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} #219#return; {9036#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,313 INFO L290 TraceCheckUtils]: 20: Hoare triple {9036#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {9040#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,313 INFO L290 TraceCheckUtils]: 21: Hoare triple {9040#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {9040#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,314 INFO L290 TraceCheckUtils]: 22: Hoare triple {9040#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,314 INFO L290 TraceCheckUtils]: 23: Hoare triple {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,315 INFO L290 TraceCheckUtils]: 24: Hoare triple {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,315 INFO L290 TraceCheckUtils]: 25: Hoare triple {9047#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {9057#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,316 INFO L290 TraceCheckUtils]: 26: Hoare triple {9057#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {9061#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:33,316 INFO L272 TraceCheckUtils]: 27: Hoare triple {9061#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {9065#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:59:33,317 INFO L290 TraceCheckUtils]: 28: Hoare triple {9065#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:33,318 INFO L290 TraceCheckUtils]: 29: Hoare triple {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:33,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9076#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (exists ((v_ArrVal_802 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_802) |#memory_$Pointer$.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:33,331 WARN L290 TraceCheckUtils]: 31: Hoare triple {9076#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (exists ((v_ArrVal_802 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_802) |#memory_$Pointer$.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is UNKNOWN [2022-02-20 23:59:33,332 INFO L290 TraceCheckUtils]: 32: Hoare triple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,333 INFO L290 TraceCheckUtils]: 33: Hoare triple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:33,350 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {9061#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} #221#return; {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:33,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:33,361 INFO L290 TraceCheckUtils]: 36: Hoare triple {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:33,373 INFO L290 TraceCheckUtils]: 37: Hoare triple {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:33,373 INFO L290 TraceCheckUtils]: 38: Hoare triple {9090#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|)))))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} SUMMARY for call sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L612 {9103#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)))))} is VALID [2022-02-20 23:59:33,374 INFO L290 TraceCheckUtils]: 39: Hoare triple {9103#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)))))} sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset := sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset;havoc sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset; {9107#(= (bvadd (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_~last~1#1.base|))) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:59:33,374 INFO L290 TraceCheckUtils]: 40: Hoare triple {9107#(= (bvadd (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_~last~1#1.base|))) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[sll_circular_append_~last~1#1.base]); {8971#false} is VALID [2022-02-20 23:59:33,374 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:59:33,374 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:33,570 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:33,570 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [370118719] [2022-02-20 23:59:33,570 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [370118719] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:33,570 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [2119586834] [2022-02-20 23:59:33,571 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:33,571 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:59:33,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:59:33,579 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:59:33,597 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (20)] Waiting until timeout for monitored process [2022-02-20 23:59:33,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:33,839 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 27 conjunts are in the unsatisfiable core [2022-02-20 23:59:33,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:33,861 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:33,980 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:34,369 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 8 [2022-02-20 23:59:34,595 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:34,596 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 21 [2022-02-20 23:59:34,653 INFO L356 Elim1Store]: treesize reduction 27, result has 43.8 percent of original size [2022-02-20 23:59:34,654 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 25 treesize of output 36 [2022-02-20 23:59:35,033 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 17 [2022-02-20 23:59:35,087 INFO L290 TraceCheckUtils]: 0: Hoare triple {8970#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {8970#true} is VALID [2022-02-20 23:59:35,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {8970#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:35,089 INFO L272 TraceCheckUtils]: 2: Hoare triple {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,090 INFO L290 TraceCheckUtils]: 3: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,090 INFO L290 TraceCheckUtils]: 4: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,091 INFO L290 TraceCheckUtils]: 5: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,091 INFO L290 TraceCheckUtils]: 6: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume true; {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,092 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} #217#return; {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:35,093 INFO L290 TraceCheckUtils]: 10: Hoare triple {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:35,093 INFO L290 TraceCheckUtils]: 11: Hoare triple {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:35,094 INFO L272 TraceCheckUtils]: 12: Hoare triple {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:35,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {8982#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,096 INFO L290 TraceCheckUtils]: 15: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,097 INFO L290 TraceCheckUtils]: 17: Hoare triple {9016#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:35,097 INFO L290 TraceCheckUtils]: 18: Hoare triple {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:35,098 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {9029#(and (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {9137#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} #219#return; {9192#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,098 INFO L290 TraceCheckUtils]: 20: Hoare triple {9192#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {9196#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,099 INFO L290 TraceCheckUtils]: 21: Hoare triple {9196#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {9196#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,099 INFO L290 TraceCheckUtils]: 22: Hoare triple {9196#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,100 INFO L290 TraceCheckUtils]: 23: Hoare triple {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,100 INFO L290 TraceCheckUtils]: 24: Hoare triple {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {9203#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {9213#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,102 INFO L290 TraceCheckUtils]: 26: Hoare triple {9213#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {9217#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))))} is VALID [2022-02-20 23:59:35,103 INFO L272 TraceCheckUtils]: 27: Hoare triple {9217#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {9065#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:59:35,104 INFO L290 TraceCheckUtils]: 28: Hoare triple {9065#(and (= |old(#valid)| |#valid|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:35,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:35,106 INFO L290 TraceCheckUtils]: 30: Hoare triple {9069#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9076#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (exists ((v_ArrVal_802 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_802) |#memory_$Pointer$.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:35,119 WARN L290 TraceCheckUtils]: 31: Hoare triple {9076#(and (exists ((v_ArrVal_801 (_ BitVec 1))) (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|)) (exists ((v_ArrVal_802 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_802) |#memory_$Pointer$.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is UNKNOWN [2022-02-20 23:59:35,121 INFO L290 TraceCheckUtils]: 32: Hoare triple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:35,149 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9080#(and (exists ((v_ArrVal_803 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_801 (_ BitVec 1))) (and (= (store |old(#valid)| |node_create_~temp~0#1.base| v_ArrVal_801) |#valid|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_803)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {9217#(and (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))))} #221#return; {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,151 INFO L290 TraceCheckUtils]: 35: Hoare triple {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,152 INFO L290 TraceCheckUtils]: 36: Hoare triple {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,152 INFO L290 TraceCheckUtils]: 37: Hoare triple {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:35,153 INFO L290 TraceCheckUtils]: 38: Hoare triple {9242#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32))))) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L612 {9103#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)))))} is VALID [2022-02-20 23:59:35,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {9103#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)))))} sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset := sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset;havoc sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset; {9107#(= (bvadd (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_~last~1#1.base|))) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:59:35,154 INFO L290 TraceCheckUtils]: 40: Hoare triple {9107#(= (bvadd (bvneg (bvneg (select |#valid| |ULTIMATE.start_sll_circular_append_~last~1#1.base|))) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[sll_circular_append_~last~1#1.base]); {8971#false} is VALID [2022-02-20 23:59:35,154 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:59:35,154 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:35,312 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [2119586834] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:35,312 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:59:35,312 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-02-20 23:59:35,314 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [14999123] [2022-02-20 23:59:35,314 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:59:35,315 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 41 [2022-02-20 23:59:35,315 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:35,315 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:35,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 60 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:35,453 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-02-20 23:59:35,453 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:35,453 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-02-20 23:59:35,453 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=601, Unknown=6, NotChecked=0, Total=702 [2022-02-20 23:59:35,454 INFO L87 Difference]: Start difference. First operand 108 states and 117 transitions. Second operand has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:38,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:38,672 INFO L93 Difference]: Finished difference Result 171 states and 186 transitions. [2022-02-20 23:59:38,672 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:59:38,672 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 41 [2022-02-20 23:59:38,672 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:59:38,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:38,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 189 transitions. [2022-02-20 23:59:38,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:38,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 189 transitions. [2022-02-20 23:59:38,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 189 transitions. [2022-02-20 23:59:38,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 189 edges. 188 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:38,932 INFO L225 Difference]: With dead ends: 171 [2022-02-20 23:59:38,932 INFO L226 Difference]: Without dead ends: 171 [2022-02-20 23:59:38,932 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 60 SyntacticMatches, 9 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 352 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=155, Invalid=957, Unknown=10, NotChecked=0, Total=1122 [2022-02-20 23:59:38,933 INFO L933 BasicCegarLoop]: 130 mSDtfsCounter, 103 mSDsluCounter, 744 mSDsCounter, 0 mSdLazyCounter, 478 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 874 SdHoareTripleChecker+Invalid, 735 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 478 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 247 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:59:38,933 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 874 Invalid, 735 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 478 Invalid, 0 Unknown, 247 Unchecked, 0.8s Time] [2022-02-20 23:59:38,933 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-02-20 23:59:38,934 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 107. [2022-02-20 23:59:38,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:59:38,935 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:38,935 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:38,935 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:38,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:38,938 INFO L93 Difference]: Finished difference Result 171 states and 186 transitions. [2022-02-20 23:59:38,938 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 186 transitions. [2022-02-20 23:59:38,938 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:38,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:38,939 INFO L74 IsIncluded]: Start isIncluded. First operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 171 states. [2022-02-20 23:59:38,939 INFO L87 Difference]: Start difference. First operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 171 states. [2022-02-20 23:59:38,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:59:38,941 INFO L93 Difference]: Finished difference Result 171 states and 186 transitions. [2022-02-20 23:59:38,941 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 186 transitions. [2022-02-20 23:59:38,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:59:38,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:59:38,941 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:59:38,942 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:59:38,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 69 states have (on average 1.608695652173913) internal successors, (111), 102 states have internal predecessors, (111), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:59:38,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 117 transitions. [2022-02-20 23:59:38,943 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 117 transitions. Word has length 41 [2022-02-20 23:59:38,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:59:38,943 INFO L470 AbstractCegarLoop]: Abstraction has 107 states and 117 transitions. [2022-02-20 23:59:38,943 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:38,943 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 117 transitions. [2022-02-20 23:59:38,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:59:38,944 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:59:38,944 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:59:38,948 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (20)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:39,172 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Forceful destruction successful, exit code 0 [2022-02-20 23:59:39,347 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:59:39,347 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 54 more)] === [2022-02-20 23:59:39,347 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:59:39,347 INFO L85 PathProgramCache]: Analyzing trace with hash 1473750502, now seen corresponding path program 1 times [2022-02-20 23:59:39,348 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:59:39,348 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1242559271] [2022-02-20 23:59:39,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:39,348 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:59:39,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:59:39,349 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:59:39,352 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (21)] Waiting until timeout for monitored process [2022-02-20 23:59:39,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:39,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 44 conjunts are in the unsatisfiable core [2022-02-20 23:59:39,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:39,585 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:39,639 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:39,645 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:39,878 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:40,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2022-02-20 23:59:40,021 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:59:40,401 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:40,402 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:59:40,413 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:40,414 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 28 [2022-02-20 23:59:40,430 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:59:40,430 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 19 [2022-02-20 23:59:40,448 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:40,450 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:59:40,827 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:59:40,839 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:59:40,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {9915#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {9915#true} is VALID [2022-02-20 23:59:40,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {9915#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:40,950 INFO L272 TraceCheckUtils]: 2: Hoare triple {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,951 INFO L290 TraceCheckUtils]: 3: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,951 INFO L290 TraceCheckUtils]: 4: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,952 INFO L290 TraceCheckUtils]: 7: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume true; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,953 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} #217#return; {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:40,953 INFO L290 TraceCheckUtils]: 10: Hoare triple {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:40,953 INFO L290 TraceCheckUtils]: 11: Hoare triple {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} is VALID [2022-02-20 23:59:40,954 INFO L272 TraceCheckUtils]: 12: Hoare triple {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:40,955 INFO L290 TraceCheckUtils]: 13: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:40,955 INFO L290 TraceCheckUtils]: 14: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:40,956 INFO L290 TraceCheckUtils]: 15: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:40,956 INFO L290 TraceCheckUtils]: 16: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:40,957 INFO L290 TraceCheckUtils]: 17: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:40,957 INFO L290 TraceCheckUtils]: 18: Hoare triple {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:40,958 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {9923#(bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|)} #219#return; {9981#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:40,959 INFO L290 TraceCheckUtils]: 20: Hoare triple {9981#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {9985#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:40,959 INFO L290 TraceCheckUtils]: 21: Hoare triple {9985#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {9985#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:40,960 INFO L290 TraceCheckUtils]: 22: Hoare triple {9985#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:40,960 INFO L290 TraceCheckUtils]: 23: Hoare triple {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:40,961 INFO L290 TraceCheckUtils]: 24: Hoare triple {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:40,962 INFO L290 TraceCheckUtils]: 25: Hoare triple {9992#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {10002#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#res#1.offset|))} is VALID [2022-02-20 23:59:40,962 INFO L290 TraceCheckUtils]: 26: Hoare triple {10002#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#res#1.offset|))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {10006#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:59:40,963 INFO L272 TraceCheckUtils]: 27: Hoare triple {10006#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {10010#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:59:40,964 INFO L290 TraceCheckUtils]: 28: Hoare triple {10010#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:40,965 INFO L290 TraceCheckUtils]: 29: Hoare triple {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:40,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {10021#(and (exists ((v_ArrVal_939 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_939))) (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (exists ((v_ArrVal_938 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_938))) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:40,992 WARN L290 TraceCheckUtils]: 31: Hoare triple {10021#(and (exists ((v_ArrVal_939 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_939))) (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (exists ((v_ArrVal_938 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_938))) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is UNKNOWN [2022-02-20 23:59:40,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:40,994 INFO L290 TraceCheckUtils]: 33: Hoare triple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:41,015 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {10006#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (_ bv1 1)) (_ bv0 1)))} #221#return; {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:41,025 INFO L290 TraceCheckUtils]: 35: Hoare triple {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:41,045 INFO L290 TraceCheckUtils]: 36: Hoare triple {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:41,050 INFO L290 TraceCheckUtils]: 37: Hoare triple {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} is VALID [2022-02-20 23:59:41,051 INFO L290 TraceCheckUtils]: 38: Hoare triple {10035#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (not (= |node_create_~temp~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) |ULTIMATE.start_sll_circular_append_~head#1.offset|))) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))))} SUMMARY for call sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L612 {10048#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)) (= |ULTIMATE.start_sll_circular_append_#t~mem11#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:41,052 INFO L290 TraceCheckUtils]: 39: Hoare triple {10048#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)) (= |ULTIMATE.start_sll_circular_append_#t~mem11#1.offset| (_ bv0 32)))} sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset := sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset;havoc sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset; {10052#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~last~1#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_append_~last~1#1.offset|))} is VALID [2022-02-20 23:59:41,052 INFO L290 TraceCheckUtils]: 40: Hoare triple {10052#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~last~1#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_append_~last~1#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~last~1#1.offset), #length[sll_circular_append_~last~1#1.base]) && ~bvule32(sll_circular_append_~last~1#1.offset, ~bvadd32(4bv32, sll_circular_append_~last~1#1.offset))) && ~bvule32(0bv32, sll_circular_append_~last~1#1.offset)); {9916#false} is VALID [2022-02-20 23:59:41,053 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:59:41,053 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:41,589 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:59:41,589 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1242559271] [2022-02-20 23:59:41,589 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1242559271] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:41,589 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1322334441] [2022-02-20 23:59:41,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:59:41,590 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:59:41,590 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:59:41,591 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:59:41,593 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (22)] Waiting until timeout for monitored process [2022-02-20 23:59:41,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:41,916 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 44 conjunts are in the unsatisfiable core [2022-02-20 23:59:41,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:59:41,942 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:59:42,046 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:42,050 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:59:42,550 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 14 [2022-02-20 23:59:42,564 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:59:42,862 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:42,863 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:59:42,874 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:42,876 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 28 [2022-02-20 23:59:42,888 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:59:42,891 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:59:42,907 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:59:42,907 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 19 [2022-02-20 23:59:43,269 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:59:43,278 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:59:43,323 INFO L290 TraceCheckUtils]: 0: Hoare triple {9915#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(23bv32, 2bv32); {9915#true} is VALID [2022-02-20 23:59:43,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {9915#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret16#1.base, main_#t~ret16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem22#1, main_#t~mem23#1.base, main_#t~mem23#1.offset, main_#t~post24#1, main_#t~mem25#1, main_#t~post26#1, main_#t~mem27#1.base, main_#t~mem27#1.offset, main_~len~0#1, main_~data~0#1, main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1, main_~ptr~0#1.base, main_~ptr~0#1.offset, main_~count~0#1, main_~last~2#1.base, main_~last~2#1.offset;main_~len~0#1 := 2bv32;main_~data~0#1 := 1bv32;call main_~#s~0#1.base, main_~#s~0#1.offset := #Ultimate.allocOnStack(4bv32);assume { :begin_inline_sll_circular_create } true;sll_circular_create_#in~len#1, sll_circular_create_#in~data#1 := main_~len~0#1, main_~data~0#1;havoc sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset, sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset, sll_circular_create_#t~post6#1, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, sll_circular_create_~len#1, sll_circular_create_~data#1, sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset;sll_circular_create_~len#1 := sll_circular_create_#in~len#1;sll_circular_create_~data#1 := sll_circular_create_#in~data#1; {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:43,324 INFO L272 TraceCheckUtils]: 2: Hoare triple {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} call sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset := node_create(sll_circular_create_~data#1); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,324 INFO L290 TraceCheckUtils]: 3: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,324 INFO L290 TraceCheckUtils]: 4: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,325 INFO L290 TraceCheckUtils]: 6: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} assume true; {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,326 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} #217#return; {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:43,326 INFO L290 TraceCheckUtils]: 10: Hoare triple {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;havoc sll_circular_create_#t~ret4#1.base, sll_circular_create_#t~ret4#1.offset;sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:43,327 INFO L290 TraceCheckUtils]: 11: Hoare triple {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} assume !!~bvsgt32(sll_circular_create_~len#1, 1bv32); {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:43,327 INFO L272 TraceCheckUtils]: 12: Hoare triple {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} call sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset := node_create(sll_circular_create_~data#1); {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} is VALID [2022-02-20 23:59:43,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {9927#(not (= |#StackHeapBarrier| (_ bv4294967295 32)))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,328 INFO L290 TraceCheckUtils]: 14: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,329 INFO L290 TraceCheckUtils]: 15: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,329 INFO L290 TraceCheckUtils]: 16: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,330 INFO L290 TraceCheckUtils]: 17: Hoare triple {9961#(and (= (select |#valid| |node_create_~temp~0#1.base|) (_ bv1 1)) (= |node_create_~temp~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_~temp~0#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:43,330 INFO L290 TraceCheckUtils]: 18: Hoare triple {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} assume true; {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:59:43,331 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {9974#(and (= |node_create_#res#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |node_create_#res#1.base|)) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (select |#valid| |node_create_#res#1.base|) (_ bv1 1)))} {10084#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)))} #219#return; {10139#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:43,331 INFO L290 TraceCheckUtils]: 20: Hoare triple {10139#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_#t~ret5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_#t~ret5#1.base|) (_ bv8 32)))} sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset := sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset;havoc sll_circular_create_#t~ret5#1.base, sll_circular_create_#t~ret5#1.offset; {10143#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:43,332 INFO L290 TraceCheckUtils]: 21: Hoare triple {10143#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset, 4bv32); srcloc: L588 {10143#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:59:43,333 INFO L290 TraceCheckUtils]: 22: Hoare triple {10143#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |ULTIMATE.start_sll_circular_create_~new_head~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_sll_circular_create_~new_head~0#1.base|) (_ bv8 32)))} sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset := sll_circular_create_~new_head~0#1.base, sll_circular_create_~new_head~0#1.offset;sll_circular_create_#t~post6#1 := sll_circular_create_~len#1;sll_circular_create_~len#1 := ~bvsub32(sll_circular_create_#t~post6#1, 1bv32);havoc sll_circular_create_#t~post6#1; {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:43,333 INFO L290 TraceCheckUtils]: 23: Hoare triple {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} assume !~bvsgt32(sll_circular_create_~len#1, 1bv32); {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:43,334 INFO L290 TraceCheckUtils]: 24: Hoare triple {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} SUMMARY for call write~$Pointer$(sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset, sll_circular_create_~last~0#1.base, sll_circular_create_~last~0#1.offset, 4bv32); srcloc: L586-3 {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} is VALID [2022-02-20 23:59:43,334 INFO L290 TraceCheckUtils]: 25: Hoare triple {10150#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_~head~0#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_~head~0#1.offset|))} sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset := sll_circular_create_~head~0#1.base, sll_circular_create_~head~0#1.offset; {10160#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#res#1.offset|))} is VALID [2022-02-20 23:59:43,335 INFO L290 TraceCheckUtils]: 26: Hoare triple {10160#(and (bvult |#StackHeapBarrier| |ULTIMATE.start_main_~#s~0#1.base|) (= |ULTIMATE.start_main_~#s~0#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_sll_circular_create_#res#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_create_#res#1.offset|))} main_#t~ret16#1.base, main_#t~ret16#1.offset := sll_circular_create_#res#1.base, sll_circular_create_#res#1.offset;assume { :end_inline_sll_circular_create } true;call write~init~$Pointer$(main_#t~ret16#1.base, main_#t~ret16#1.offset, main_~#s~0#1.base, main_~#s~0#1.offset, 4bv32);havoc main_#t~ret16#1.base, main_#t~ret16#1.offset;main_~uneq~0#1 := 5bv32;assume { :begin_inline_sll_circular_append } true;sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset, sll_circular_append_#in~data#1 := main_~#s~0#1.base, main_~#s~0#1.offset, main_~uneq~0#1;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset, sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset, sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset, sll_circular_append_#t~mem14#1.base, sll_circular_append_#t~mem14#1.offset, sll_circular_append_#t~mem12#1.base, sll_circular_append_#t~mem12#1.offset, sll_circular_append_#t~mem13#1.base, sll_circular_append_#t~mem13#1.offset, sll_circular_append_#t~mem15#1.base, sll_circular_append_#t~mem15#1.offset, sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset, sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, sll_circular_append_~data#1, sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset;sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset := sll_circular_append_#in~head#1.base, sll_circular_append_#in~head#1.offset;sll_circular_append_~data#1 := sll_circular_append_#in~data#1; {10164#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} is VALID [2022-02-20 23:59:43,335 INFO L272 TraceCheckUtils]: 27: Hoare triple {10164#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} call sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset := node_create(sll_circular_append_~data#1); {10010#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:59:43,336 INFO L290 TraceCheckUtils]: 28: Hoare triple {10010#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~data#1 := #in~data#1;call #t~malloc3#1.base, #t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);~temp~0#1.base, ~temp~0#1.offset := #t~malloc3#1.base, #t~malloc3#1.offset;havoc #t~malloc3#1.base, #t~malloc3#1.offset; {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:43,337 INFO L290 TraceCheckUtils]: 29: Hoare triple {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} assume !(0bv32 == ~temp~0#1.base && 0bv32 == ~temp~0#1.offset); {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:43,339 INFO L290 TraceCheckUtils]: 30: Hoare triple {10014#(and (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~temp~0#1.base, ~temp~0#1.offset, 4bv32); srcloc: L576-1 {10021#(and (exists ((v_ArrVal_939 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_939))) (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (exists ((v_ArrVal_938 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_938))) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} is VALID [2022-02-20 23:59:43,368 WARN L290 TraceCheckUtils]: 31: Hoare triple {10021#(and (exists ((v_ArrVal_939 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_939))) (exists ((v_ArrVal_937 (_ BitVec 32))) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937))) (exists ((v_ArrVal_938 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_938))) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))} SUMMARY for call write~intINTTYPE4(~data#1, ~temp~0#1.base, ~bvadd32(4bv32, ~temp~0#1.offset), 4bv32); srcloc: L579 {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is UNKNOWN [2022-02-20 23:59:43,369 INFO L290 TraceCheckUtils]: 32: Hoare triple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} #res#1.base, #res#1.offset := ~temp~0#1.base, ~temp~0#1.offset; {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,370 INFO L290 TraceCheckUtils]: 33: Hoare triple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} assume true; {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} is VALID [2022-02-20 23:59:43,392 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10025#(and (exists ((v_ArrVal_937 (_ BitVec 32)) (v_ArrVal_940 (Array (_ BitVec 32) (_ BitVec 32))) (|node_create_~temp~0#1.base| (_ BitVec 32)) (v_ArrVal_941 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| |node_create_~temp~0#1.base| v_ArrVal_941)) (= |#length| (store |old(#length)| |node_create_~temp~0#1.base| v_ArrVal_937)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|) (= (store |old(#memory_$Pointer$.base)| |node_create_~temp~0#1.base| v_ArrVal_940) |#memory_$Pointer$.base|) (= (_ bv0 1) (bvneg (select |old(#valid)| |node_create_~temp~0#1.base|))))) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))} {10164#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))) (_ bv1 1))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} #221#return; {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} is VALID [2022-02-20 23:59:43,393 INFO L290 TraceCheckUtils]: 35: Hoare triple {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} sll_circular_append_~new_last~0#1.base, sll_circular_append_~new_last~0#1.offset := sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset;havoc sll_circular_append_#t~ret9#1.base, sll_circular_append_#t~ret9#1.offset; {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} is VALID [2022-02-20 23:59:43,393 INFO L290 TraceCheckUtils]: 36: Hoare triple {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} SUMMARY for call sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L608 {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} is VALID [2022-02-20 23:59:43,394 INFO L290 TraceCheckUtils]: 37: Hoare triple {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} assume !(0bv32 == sll_circular_append_#t~mem10#1.base && 0bv32 == sll_circular_append_#t~mem10#1.offset);havoc sll_circular_append_#t~mem10#1.base, sll_circular_append_#t~mem10#1.offset; {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} is VALID [2022-02-20 23:59:43,394 INFO L290 TraceCheckUtils]: 38: Hoare triple {10189#(and (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|node_create_~temp~0#1.base| (_ BitVec 32))) (and (bvult |#StackHeapBarrier| |ULTIMATE.start_sll_circular_append_~head#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) |node_create_~temp~0#1.base|)) (bvult |node_create_~temp~0#1.base| |#StackHeapBarrier|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |ULTIMATE.start_sll_circular_append_~head#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_sll_circular_append_~head#1.base|) (_ bv0 32)))))} SUMMARY for call sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset := read~$Pointer$(sll_circular_append_~head#1.base, sll_circular_append_~head#1.offset, 4bv32); srcloc: L612 {10048#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)) (= |ULTIMATE.start_sll_circular_append_#t~mem11#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:59:43,395 INFO L290 TraceCheckUtils]: 39: Hoare triple {10048#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_#t~mem11#1.base|)) (= |ULTIMATE.start_sll_circular_append_#t~mem11#1.offset| (_ bv0 32)))} sll_circular_append_~last~1#1.base, sll_circular_append_~last~1#1.offset := sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset;havoc sll_circular_append_#t~mem11#1.base, sll_circular_append_#t~mem11#1.offset; {10052#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~last~1#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_append_~last~1#1.offset|))} is VALID [2022-02-20 23:59:43,395 INFO L290 TraceCheckUtils]: 40: Hoare triple {10052#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_sll_circular_append_~last~1#1.base|)) (= (_ bv0 32) |ULTIMATE.start_sll_circular_append_~last~1#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, sll_circular_append_~last~1#1.offset), #length[sll_circular_append_~last~1#1.base]) && ~bvule32(sll_circular_append_~last~1#1.offset, ~bvadd32(4bv32, sll_circular_append_~last~1#1.offset))) && ~bvule32(0bv32, sll_circular_append_~last~1#1.offset)); {9916#false} is VALID [2022-02-20 23:59:43,396 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:59:43,396 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:59:43,893 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1322334441] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:59:43,893 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:59:43,893 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-02-20 23:59:43,893 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [691331221] [2022-02-20 23:59:43,893 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:59:43,893 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 41 [2022-02-20 23:59:43,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:59:43,894 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:59:44,031 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 60 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:59:44,031 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-02-20 23:59:44,031 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:59:44,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-02-20 23:59:44,032 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=760, Unknown=5, NotChecked=0, Total=870 [2022-02-20 23:59:44,032 INFO L87 Difference]: Start difference. First operand 107 states and 117 transitions. Second operand has 25 states, 22 states have (on average 2.227272727272727) internal successors, (49), 22 states have internal predecessors, (49), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6)