./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash c3b06783378816ab028e38f9f4609990f4d1028238bbcb0e88638ebb644bb54d --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 05:05:23,202 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 05:05:23,253 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf [2025-02-06 05:05:23,262 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 05:05:23,262 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 05:05:23,288 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 05:05:23,289 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 05:05:23,289 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 05:05:23,289 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 05:05:23,290 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 05:05:23,290 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 05:05:23,291 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 05:05:23,291 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 05:05:23,291 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 05:05:23,292 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 05:05:23,292 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 05:05:23,292 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 05:05:23,293 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) 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 -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c3b06783378816ab028e38f9f4609990f4d1028238bbcb0e88638ebb644bb54d [2025-02-06 05:05:23,529 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 05:05:23,537 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 05:05:23,540 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 05:05:23,540 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 05:05:23,541 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 05:05:23,541 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i [2025-02-06 05:05:24,772 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c066fc756/94bfa9a72b184b91854974fbc73127d2/FLAG6e690de2a [2025-02-06 05:05:25,249 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 05:05:25,250 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i [2025-02-06 05:05:25,278 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c066fc756/94bfa9a72b184b91854974fbc73127d2/FLAG6e690de2a [2025-02-06 05:05:25,345 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c066fc756/94bfa9a72b184b91854974fbc73127d2 [2025-02-06 05:05:25,347 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 05:05:25,347 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 05:05:25,348 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 05:05:25,349 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 05:05:25,352 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 05:05:25,353 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 05:05:25" (1/1) ... [2025-02-06 05:05:25,354 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ca01864 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:25, skipping insertion in model container [2025-02-06 05:05:25,354 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 05:05:25" (1/1) ... [2025-02-06 05:05:25,419 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 05:05:25,597 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i[4501,4514] [2025-02-06 05:05:25,605 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i[4561,4574] [2025-02-06 05:05:26,193 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,194 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,194 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,194 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,195 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,203 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,204 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,205 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,206 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,682 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,682 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,825 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 05:05:26,859 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 05:05:26,868 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i[4501,4514] [2025-02-06 05:05:26,868 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/aws-c-common/aws_byte_cursor_from_string_harness.i[4561,4574] [2025-02-06 05:05:26,895 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,895 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,896 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,896 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,896 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,900 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,901 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,902 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,902 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,997 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring inline assembler instruction C: __asm__ __volatile__("" : "+r"(index)); [8253] [2025-02-06 05:05:26,999 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:26,999 WARN L1731 CHandler]: Possible shadowing of function index [2025-02-06 05:05:27,011 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring inline assembler instruction C: __asm__ __volatile__("" : : "r"(pBuf) : "memory"); [8739-8750] [2025-02-06 05:05:27,035 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 05:05:27,240 INFO L204 MainTranslator]: Completed translation [2025-02-06 05:05:27,241 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27 WrapperNode [2025-02-06 05:05:27,241 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 05:05:27,242 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 05:05:27,242 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 05:05:27,242 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 05:05:27,246 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,298 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,336 INFO L138 Inliner]: procedures = 682, calls = 2791, calls flagged for inlining = 59, calls inlined = 7, statements flattened = 848 [2025-02-06 05:05:27,336 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 05:05:27,337 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 05:05:27,337 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 05:05:27,337 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 05:05:27,349 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,349 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,356 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,393 INFO L175 MemorySlicer]: Split 543 memory accesses to 6 slices as follows [2, 5, 257, 249, 16, 14]. 47 percent of accesses are in the largest equivalence class. The 31 initializations are split as follows [2, 5, 0, 6, 16, 2]. The 494 writes are split as follows [0, 0, 257, 235, 0, 2]. [2025-02-06 05:05:27,394 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,394 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,413 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,414 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,417 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,419 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,423 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 05:05:27,424 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 05:05:27,424 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 05:05:27,424 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 05:05:27,425 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (1/1) ... [2025-02-06 05:05:27,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 05:05:27,436 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 05:05:27,446 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 05:05:27,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 05:05:27,462 INFO L130 BoogieDeclarations]: Found specification of procedure aws_string_is_valid [2025-02-06 05:05:27,463 INFO L138 BoogieDeclarations]: Found implementation of procedure aws_string_is_valid [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure aws_byte_cursor_is_valid [2025-02-06 05:05:27,463 INFO L138 BoogieDeclarations]: Found implementation of procedure aws_byte_cursor_is_valid [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure ensure_string_is_allocated_bounded_length [2025-02-06 05:05:27,463 INFO L138 BoogieDeclarations]: Found implementation of procedure ensure_string_is_allocated_bounded_length [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_bool [2025-02-06 05:05:27,463 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_bool [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#0 [2025-02-06 05:05:27,463 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#1 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#2 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#3 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#4 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#5 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#5 [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2025-02-06 05:05:27,464 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 05:05:27,464 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#0 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#1 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#2 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#3 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#4 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#5 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 05:05:27,465 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure bounded_malloc [2025-02-06 05:05:27,465 INFO L138 BoogieDeclarations]: Found implementation of procedure bounded_malloc [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#0 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#1 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#2 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#3 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#4 [2025-02-06 05:05:27,465 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#5 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure aws_string_bytes [2025-02-06 05:05:27,466 INFO L138 BoogieDeclarations]: Found implementation of procedure aws_string_bytes [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 05:05:27,466 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#0 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#1 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#2 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#3 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#4 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#5 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#0 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#1 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#2 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#3 [2025-02-06 05:05:27,466 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#4 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$#5 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure can_fail_allocator [2025-02-06 05:05:27,467 INFO L138 BoogieDeclarations]: Found implementation of procedure can_fail_allocator [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_uint64_t [2025-02-06 05:05:27,467 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_uint64_t [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#5 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-02-06 05:05:27,467 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-02-06 05:05:27,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2025-02-06 05:05:27,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2025-02-06 05:05:27,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2025-02-06 05:05:27,729 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 05:05:27,730 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 05:05:27,755 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L6886: havoc #t~malloc557.base, #t~malloc557.offset; [2025-02-06 05:05:27,791 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L6256: havoc #t~mem472;havoc #t~short473;havoc #t~mem474;havoc #t~mem475;havoc #t~short476; [2025-02-06 05:05:27,793 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L266: havoc #t~nondet9; [2025-02-06 05:05:27,809 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L261: havoc #t~nondet4; [2025-02-06 05:05:27,856 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L7371: havoc #t~mem693;havoc #t~mem694;havoc #t~mem695.base, #t~mem695.offset;havoc #t~short696;havoc #t~mem697;havoc #t~mem698.base, #t~mem698.offset;havoc #t~short699;havoc #t~short700;havoc #t~short701;havoc #t~short702; [2025-02-06 05:05:27,891 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L6803: havoc #t~ret543#1.base, #t~ret543#1.offset; [2025-02-06 05:05:34,633 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L9518: havoc aws_byte_cursor_from_string_#t~ret1346#1.base, aws_byte_cursor_from_string_#t~ret1346#1.offset;havoc aws_byte_cursor_from_string_#t~mem1347#1;havoc aws_byte_cursor_from_string_#t~ret1348#1.len, aws_byte_cursor_from_string_#t~ret1348#1.ptr.base, aws_byte_cursor_from_string_#t~ret1348#1.ptr.offset; [2025-02-06 05:05:34,634 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L8241: havoc aws_byte_cursor_from_array_#t~mem1080#1;havoc aws_byte_cursor_from_array_#t~mem1081#1.base, aws_byte_cursor_from_array_#t~mem1081#1.offset;call ULTIMATE.dealloc(aws_byte_cursor_from_array_~#cur~2#1.base, aws_byte_cursor_from_array_~#cur~2#1.offset);havoc aws_byte_cursor_from_array_~#cur~2#1.base, aws_byte_cursor_from_array_~#cur~2#1.offset; [2025-02-06 05:05:34,663 INFO L? ?]: Removed 81 outVars from TransFormulas that were not future-live. [2025-02-06 05:05:34,663 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 05:05:34,670 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 05:05:34,670 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 05:05:34,670 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 05:05:34 BoogieIcfgContainer [2025-02-06 05:05:34,671 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 05:05:34,672 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 05:05:34,673 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 05:05:34,675 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 05:05:34,676 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 05:05:25" (1/3) ... [2025-02-06 05:05:34,676 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2be03e16 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 05:05:34, skipping insertion in model container [2025-02-06 05:05:34,676 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 05:05:27" (2/3) ... [2025-02-06 05:05:34,676 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2be03e16 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 05:05:34, skipping insertion in model container [2025-02-06 05:05:34,676 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 05:05:34" (3/3) ... [2025-02-06 05:05:34,677 INFO L128 eAbstractionObserver]: Analyzing ICFG aws_byte_cursor_from_string_harness.i [2025-02-06 05:05:34,686 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 05:05:34,687 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG aws_byte_cursor_from_string_harness.i that has 11 procedures, 104 locations, 1 initial locations, 0 loop locations, and 1 error locations. [2025-02-06 05:05:34,728 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 05:05:34,738 INFO L333 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, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@5849b1bd, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 05:05:34,739 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 05:05:34,742 INFO L276 IsEmpty]: Start isEmpty. Operand has 104 states, 67 states have (on average 1.1791044776119404) internal successors, (79), 68 states have internal predecessors, (79), 25 states have call successors, (25), 10 states have call predecessors, (25), 10 states have return successors, (25), 25 states have call predecessors, (25), 25 states have call successors, (25) [2025-02-06 05:05:34,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2025-02-06 05:05:34,749 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 05:05:34,750 INFO L218 NwaCegarLoop]: trace histogram [5, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 05:05:34,750 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 05:05:34,754 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 05:05:34,754 INFO L85 PathProgramCache]: Analyzing trace with hash -887177288, now seen corresponding path program 1 times [2025-02-06 05:05:34,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 05:05:34,760 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [262878542] [2025-02-06 05:05:34,760 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 05:05:34,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 05:06:37,033 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 85 statements into 1 equivalence classes. [2025-02-06 05:06:37,556 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 85 of 85 statements. [2025-02-06 05:06:37,557 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 05:06:37,557 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 05:06:38,209 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2025-02-06 05:06:38,210 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 05:06:38,210 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [262878542] [2025-02-06 05:06:38,210 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [262878542] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 05:06:38,210 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1705402224] [2025-02-06 05:06:38,210 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 05:06:38,210 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 05:06:38,211 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 05:06:38,212 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 05:06:38,214 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process