./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8fc3dc66 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 32bit --witnessprinter.graph.data.programhash f190a6c4b0edbc49af141a983db7689f2287405b384242554734ee34095f2f5c --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-17 05:18:58,972 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-17 05:18:59,014 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-17 05:18:59,021 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-17 05:18:59,022 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-17 05:18:59,037 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-17 05:18:59,038 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-17 05:18:59,038 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-17 05:18:59,039 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-17 05:18:59,039 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-17 05:18:59,040 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-17 05:18:59,040 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Use SBE=true [2025-03-17 05:18:59,040 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-17 05:18:59,040 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-17 05:18:59,041 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 05:18:59,041 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-17 05:18:59,041 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-17 05:18:59,042 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-17 05:18:59,042 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-17 05:18:59,042 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-17 05:18:59,042 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/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 -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> f190a6c4b0edbc49af141a983db7689f2287405b384242554734ee34095f2f5c [2025-03-17 05:18:59,294 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-17 05:18:59,303 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-17 05:18:59,306 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-17 05:18:59,307 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-17 05:18:59,307 INFO L274 PluginConnector]: CDTParser initialized [2025-03-17 05:18:59,309 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:00,485 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/143939bd2/1b228a18b9054f4fa7db2837f2182a63/FLAG21e1211b3 [2025-03-17 05:19:00,717 INFO L384 CDTParser]: Found 1 translation units. [2025-03-17 05:19:00,717 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:00,750 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/143939bd2/1b228a18b9054f4fa7db2837f2182a63/FLAG21e1211b3 [2025-03-17 05:19:00,780 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/143939bd2/1b228a18b9054f4fa7db2837f2182a63 [2025-03-17 05:19:00,782 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-17 05:19:00,785 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-17 05:19:00,787 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-17 05:19:00,788 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-17 05:19:00,793 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-17 05:19:00,794 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 05:19:00" (1/1) ... [2025-03-17 05:19:00,796 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5b86641e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:00, skipping insertion in model container [2025-03-17 05:19:00,796 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 05:19:00" (1/1) ... [2025-03-17 05:19:00,811 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-17 05:19:00,927 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i[915,928] [2025-03-17 05:19:00,969 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 05:19:00,978 INFO L200 MainTranslator]: Completed pre-run [2025-03-17 05:19:00,989 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i[915,928] [2025-03-17 05:19:01,019 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 05:19:01,033 INFO L204 MainTranslator]: Completed translation [2025-03-17 05:19:01,034 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01 WrapperNode [2025-03-17 05:19:01,034 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-17 05:19:01,035 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-17 05:19:01,035 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-17 05:19:01,035 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-17 05:19:01,039 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,048 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,079 INFO L138 Inliner]: procedures = 29, calls = 114, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 362 [2025-03-17 05:19:01,080 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-17 05:19:01,080 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-17 05:19:01,081 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-17 05:19:01,081 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-17 05:19:01,086 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,087 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,094 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,114 INFO L175 MemorySlicer]: Split 91 memory accesses to 5 slices as follows [2, 16, 55, 12, 6]. 60 percent of accesses are in the largest equivalence class. The 11 initializations are split as follows [2, 2, 4, 2, 1]. The 13 writes are split as follows [0, 2, 8, 2, 1]. [2025-03-17 05:19:01,114 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,114 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,123 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,124 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,127 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,128 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,130 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-17 05:19:01,133 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-17 05:19:01,134 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-17 05:19:01,134 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-17 05:19:01,134 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (1/1) ... [2025-03-17 05:19:01,138 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 05:19:01,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 05:19:01,158 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-17 05:19:01,161 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-17 05:19:01,179 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-17 05:19:01,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-17 05:19:01,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-17 05:19:01,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-03-17 05:19:01,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2025-03-17 05:19:01,180 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2025-03-17 05:19:01,180 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#0 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#1 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#2 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#3 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#4 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#0 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#1 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#2 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#3 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#4 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#0 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#1 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#2 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#3 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#4 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-17 05:19:01,181 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-17 05:19:01,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-03-17 05:19:01,182 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2025-03-17 05:19:01,182 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2025-03-17 05:19:01,182 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-17 05:19:01,182 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-17 05:19:01,280 INFO L256 CfgBuilder]: Building ICFG [2025-03-17 05:19:01,282 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-17 05:19:01,525 INFO L1322 $ProcedureCfgBuilder]: dead code at ProgramPoint L92: havoc property_#t~mem54#1;havoc property_#t~ite62#1;havoc property_#t~mem57#1;havoc property_#t~mem55#1;havoc property_#t~mem56#1;havoc property_#t~mem61#1;havoc property_#t~mem58#1;havoc property_#t~ite60#1;havoc property_#t~mem59#1;havoc property_#t~mem65#1;havoc property_#t~mem63#1;havoc property_#t~mem64#1;havoc property_#t~mem66#1;havoc property_#t~ite82#1;havoc property_#t~mem67#1;havoc property_#t~ite79#1;havoc property_#t~mem68#1;havoc property_#t~mem69#1;havoc property_#t~ite76#1;havoc property_#t~mem70#1;havoc property_#t~ite73#1;havoc property_#t~mem72#1;havoc property_#t~mem71#1;havoc property_#t~mem75#1;havoc property_#t~mem74#1;havoc property_#t~mem78#1;havoc property_#t~mem77#1;havoc property_#t~mem81#1;havoc property_#t~mem80#1;havoc property_#t~short83#1;havoc property_#t~ite87#1;havoc property_#t~ite86#1;havoc property_#t~mem85#1;havoc property_#t~mem84#1;havoc property_#t~short88#1;havoc property_#t~mem89#1;havoc property_#t~ite94#1;havoc property_#t~mem91#1;havoc property_#t~mem90#1;havoc property_#t~ite93#1;havoc property_#t~mem92#1;havoc property_#t~short95#1; [2025-03-17 05:19:01,547 INFO L? ?]: Removed 75 outVars from TransFormulas that were not future-live. [2025-03-17 05:19:01,548 INFO L307 CfgBuilder]: Performing block encoding [2025-03-17 05:19:01,556 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-17 05:19:01,556 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-17 05:19:01,556 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 05:19:01 BoogieIcfgContainer [2025-03-17 05:19:01,556 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-17 05:19:01,558 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-17 05:19:01,558 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-17 05:19:01,561 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-17 05:19:01,562 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 17.03 05:19:00" (1/3) ... [2025-03-17 05:19:01,562 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bd88403 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 05:19:01, skipping insertion in model container [2025-03-17 05:19:01,562 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:01" (2/3) ... [2025-03-17 05:19:01,562 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bd88403 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 05:19:01, skipping insertion in model container [2025-03-17 05:19:01,562 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 05:19:01" (3/3) ... [2025-03-17 05:19:01,563 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:01,573 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-17 05:19:01,574 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-a_file-0.i that has 2 procedures, 79 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-17 05:19:01,623 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-17 05:19:01,634 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;@547350da, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-17 05:19:01,634 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-17 05:19:01,637 INFO L276 IsEmpty]: Start isEmpty. Operand has 79 states, 68 states have (on average 1.4852941176470589) internal successors, (101), 69 states have internal predecessors, (101), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-17 05:19:01,644 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2025-03-17 05:19:01,644 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 05:19:01,645 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-03-17 05:19:01,645 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 05:19:01,649 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 05:19:01,649 INFO L85 PathProgramCache]: Analyzing trace with hash -1115205896, now seen corresponding path program 1 times [2025-03-17 05:19:01,654 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-17 05:19:01,656 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1585246692] [2025-03-17 05:19:01,656 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:19:01,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-17 05:19:01,733 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:01,756 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:01,757 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:01,757 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 05:19:01,861 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-17 05:19:01,862 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-17 05:19:01,862 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1585246692] [2025-03-17 05:19:01,862 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1585246692] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-17 05:19:01,862 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [778736231] [2025-03-17 05:19:01,862 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:19:01,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-17 05:19:01,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 05:19:01,866 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) [2025-03-17 05:19:01,868 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-17 05:19:02,014 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:02,070 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:02,070 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:02,070 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 05:19:02,074 INFO L256 TraceCheckSpWp]: Trace formula consists of 288 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-17 05:19:02,079 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 05:19:02,097 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-17 05:19:02,097 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 05:19:02,097 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [778736231] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 05:19:02,097 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-17 05:19:02,098 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-17 05:19:02,099 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [177646346] [2025-03-17 05:19:02,099 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 05:19:02,104 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-17 05:19:02,105 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-17 05:19:02,119 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-17 05:19:02,120 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 05:19:02,123 INFO L87 Difference]: Start difference. First operand has 79 states, 68 states have (on average 1.4852941176470589) internal successors, (101), 69 states have internal predecessors, (101), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 19.5) internal successors, (39), 2 states have internal predecessors, (39), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:19:02,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-17 05:19:02,144 INFO L93 Difference]: Finished difference Result 152 states and 235 transitions. [2025-03-17 05:19:02,145 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-17 05:19:02,146 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 19.5) internal successors, (39), 2 states have internal predecessors, (39), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) Word has length 74 [2025-03-17 05:19:02,147 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-17 05:19:02,151 INFO L225 Difference]: With dead ends: 152 [2025-03-17 05:19:02,152 INFO L226 Difference]: Without dead ends: 74 [2025-03-17 05:19:02,154 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 05:19:02,157 INFO L435 NwaCegarLoop]: 104 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 104 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-17 05:19:02,158 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-17 05:19:02,168 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2025-03-17 05:19:02,180 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2025-03-17 05:19:02,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 64 states have (on average 1.375) internal successors, (88), 64 states have internal predecessors, (88), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-17 05:19:02,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 104 transitions. [2025-03-17 05:19:02,187 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 104 transitions. Word has length 74 [2025-03-17 05:19:02,187 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-17 05:19:02,187 INFO L471 AbstractCegarLoop]: Abstraction has 74 states and 104 transitions. [2025-03-17 05:19:02,187 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 19.5) internal successors, (39), 2 states have internal predecessors, (39), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:19:02,190 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 104 transitions. [2025-03-17 05:19:02,193 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2025-03-17 05:19:02,194 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 05:19:02,194 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-03-17 05:19:02,204 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-03-17 05:19:02,395 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-17 05:19:02,396 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 05:19:02,397 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 05:19:02,398 INFO L85 PathProgramCache]: Analyzing trace with hash -918136366, now seen corresponding path program 1 times [2025-03-17 05:19:02,398 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-17 05:19:02,398 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1732220885] [2025-03-17 05:19:02,398 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:19:02,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-17 05:19:02,423 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:02,483 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:02,484 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:02,484 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-17 05:19:02,484 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-17 05:19:02,496 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:02,550 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:02,550 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:02,551 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-17 05:19:02,582 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-17 05:19:02,582 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-17 05:19:02,583 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-17 05:19:02,585 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-17 05:19:02,587 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-17 05:19:02,650 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-17 05:19:02,652 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 17.03 05:19:02 BoogieIcfgContainer [2025-03-17 05:19:02,653 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-17 05:19:02,654 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-17 05:19:02,654 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-17 05:19:02,654 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-17 05:19:02,655 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 05:19:01" (3/4) ... [2025-03-17 05:19:02,656 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-17 05:19:02,657 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-17 05:19:02,657 INFO L158 Benchmark]: Toolchain (without parser) took 1873.17ms. Allocated memory is still 142.6MB. Free memory was 114.1MB in the beginning and 74.5MB in the end (delta: 39.6MB). Peak memory consumption was 40.9MB. Max. memory is 16.1GB. [2025-03-17 05:19:02,657 INFO L158 Benchmark]: CDTParser took 0.29ms. Allocated memory is still 201.3MB. Free memory is still 124.3MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 05:19:02,658 INFO L158 Benchmark]: CACSL2BoogieTranslator took 247.44ms. Allocated memory is still 142.6MB. Free memory was 114.1MB in the beginning and 100.1MB in the end (delta: 14.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-17 05:19:02,658 INFO L158 Benchmark]: Boogie Procedure Inliner took 45.05ms. Allocated memory is still 142.6MB. Free memory was 100.1MB in the beginning and 96.9MB in the end (delta: 3.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-17 05:19:02,658 INFO L158 Benchmark]: Boogie Preprocessor took 52.25ms. Allocated memory is still 142.6MB. Free memory was 96.9MB in the beginning and 93.8MB in the end (delta: 3.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 05:19:02,658 INFO L158 Benchmark]: IcfgBuilder took 423.25ms. Allocated memory is still 142.6MB. Free memory was 93.8MB in the beginning and 68.7MB in the end (delta: 25.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-17 05:19:02,659 INFO L158 Benchmark]: TraceAbstraction took 1094.74ms. Allocated memory is still 142.6MB. Free memory was 67.8MB in the beginning and 74.5MB in the end (delta: -6.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 05:19:02,659 INFO L158 Benchmark]: Witness Printer took 2.96ms. Allocated memory is still 142.6MB. Free memory was 74.5MB in the beginning and 74.5MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 05:19:02,660 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.29ms. Allocated memory is still 201.3MB. Free memory is still 124.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 247.44ms. Allocated memory is still 142.6MB. Free memory was 114.1MB in the beginning and 100.1MB in the end (delta: 14.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 45.05ms. Allocated memory is still 142.6MB. Free memory was 100.1MB in the beginning and 96.9MB in the end (delta: 3.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 52.25ms. Allocated memory is still 142.6MB. Free memory was 96.9MB in the beginning and 93.8MB in the end (delta: 3.1MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 423.25ms. Allocated memory is still 142.6MB. Free memory was 93.8MB in the beginning and 68.7MB in the end (delta: 25.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 1094.74ms. Allocated memory is still 142.6MB. Free memory was 67.8MB in the beginning and 74.5MB in the end (delta: -6.7MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 2.96ms. Allocated memory is still 142.6MB. Free memory was 74.5MB in the beginning and 74.5MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryArithmeticDOUBLEoperation at line 51, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 81, overapproximation of someBinaryDOUBLEComparisonOperation at line 81, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 92. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22-L24] unsigned char BOOL_unsigned_char_Array_0[2] = { 1, 1 }; [L22-L24] unsigned char BOOL_unsigned_char_Array_0[2] = { 1, 1 }; [L22-L24] unsigned char BOOL_unsigned_char_Array_0[2] = { 1, 1 }; [L25-L27] double double_Array_0[2][2] = { {5.25, 128.2}, {15.4, 25.8} }; [L25-L27] double double_Array_0[2][2] = { {5.25, 128.2}, {15.4, 25.8} }; [L25-L27] double double_Array_0[2][2] = { {5.25, 128.2}, {15.4, 25.8} }; [L25-L27] double double_Array_0[2][2] = { {5.25, 128.2}, {15.4, 25.8} }; [L25-L27] double double_Array_0[2][2] = { {5.25, 128.2}, {15.4, 25.8} }; [L28-L30] unsigned char unsigned_char_Array_0[2] = { 1, 100 }; [L28-L30] unsigned char unsigned_char_Array_0[2] = { 1, 100 }; [L28-L30] unsigned char unsigned_char_Array_0[2] = { 1, 100 }; [L31-L33] unsigned short int unsigned_short_int_Array_0[1] = { 5 }; [L31-L33] unsigned short int unsigned_short_int_Array_0[1] = { 5 }; [L34] double last_1_double_Array_0_0__0_ = 5.25; [L35] unsigned char last_1_unsigned_char_Array_0_1_ = 100; [L36] unsigned short int last_1_unsigned_short_int_Array_0_0_ = 5; [L96] isInitial = 1 [L97] FCALL initially() [L98] COND TRUE 1 [L99] CALL updateLastVariables() [L87] EXPR double_Array_0[0][0] [L87] last_1_double_Array_0_0__0_ = double_Array_0[0][0] [L88] EXPR unsigned_char_Array_0[1] [L88] last_1_unsigned_char_Array_0_1_ = unsigned_char_Array_0[1] [L89] EXPR unsigned_short_int_Array_0[0] [L89] last_1_unsigned_short_int_Array_0_0_ = unsigned_short_int_Array_0[0] [L99] RET updateLastVariables() [L100] CALL updateVariables() [L72] BOOL_unsigned_char_Array_0[0] = __VERIFIER_nondet_uchar() [L73] EXPR BOOL_unsigned_char_Array_0[0] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L73] CALL assume_abort_if_not(BOOL_unsigned_char_Array_0[0] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L73] RET assume_abort_if_not(BOOL_unsigned_char_Array_0[0] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L74] EXPR BOOL_unsigned_char_Array_0[0] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L74] CALL assume_abort_if_not(BOOL_unsigned_char_Array_0[0] <= 1) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L74] RET assume_abort_if_not(BOOL_unsigned_char_Array_0[0] <= 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L75] BOOL_unsigned_char_Array_0[1] = __VERIFIER_nondet_uchar() [L76] EXPR BOOL_unsigned_char_Array_0[1] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L76] CALL assume_abort_if_not(BOOL_unsigned_char_Array_0[1] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L76] RET assume_abort_if_not(BOOL_unsigned_char_Array_0[1] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L77] EXPR BOOL_unsigned_char_Array_0[1] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L77] CALL assume_abort_if_not(BOOL_unsigned_char_Array_0[1] <= 1) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L77] RET assume_abort_if_not(BOOL_unsigned_char_Array_0[1] <= 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L78] double_Array_0[1][0] = __VERIFIER_nondet_double() [L79] EXPR double_Array_0[1][0] [L79] EXPR double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L79] EXPR double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F [L79] EXPR double_Array_0[1][0] [L79] EXPR double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L79] EXPR (double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F) || (double_Array_0[1][0] <= 9223372.036854765600e+12F && double_Array_0[1][0] >= 1.0e-20F ) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L79] EXPR (double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F) || (double_Array_0[1][0] <= 9223372.036854765600e+12F && double_Array_0[1][0] >= 1.0e-20F ) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L79] CALL assume_abort_if_not((double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F) || (double_Array_0[1][0] <= 9223372.036854765600e+12F && double_Array_0[1][0] >= 1.0e-20F )) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L79] RET assume_abort_if_not((double_Array_0[1][0] >= 0.0F && double_Array_0[1][0] <= -1.0e-20F) || (double_Array_0[1][0] <= 9223372.036854765600e+12F && double_Array_0[1][0] >= 1.0e-20F )) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L80] double_Array_0[0][1] = __VERIFIER_nondet_double() [L81] EXPR double_Array_0[0][1] [L81] EXPR double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L81] EXPR double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F [L81] EXPR double_Array_0[0][1] [L81] EXPR double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L81] EXPR (double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F) || (double_Array_0[0][1] <= 9223372.036854765600e+12F && double_Array_0[0][1] >= 1.0e-20F ) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L81] EXPR (double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F) || (double_Array_0[0][1] <= 9223372.036854765600e+12F && double_Array_0[0][1] >= 1.0e-20F ) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L81] CALL assume_abort_if_not((double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F) || (double_Array_0[0][1] <= 9223372.036854765600e+12F && double_Array_0[0][1] >= 1.0e-20F )) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L81] RET assume_abort_if_not((double_Array_0[0][1] >= 0.0F && double_Array_0[0][1] <= -1.0e-20F) || (double_Array_0[0][1] <= 9223372.036854765600e+12F && double_Array_0[0][1] >= 1.0e-20F )) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L82] unsigned_char_Array_0[0] = __VERIFIER_nondet_uchar() [L83] EXPR unsigned_char_Array_0[0] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L83] CALL assume_abort_if_not(unsigned_char_Array_0[0] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L83] RET assume_abort_if_not(unsigned_char_Array_0[0] >= 0) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L84] EXPR unsigned_char_Array_0[0] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L84] CALL assume_abort_if_not(unsigned_char_Array_0[0] <= 254) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L20] COND FALSE !(!cond) VAL [BOOL_unsigned_char_Array_0={4:0}, \old(cond)=1, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L84] RET assume_abort_if_not(unsigned_char_Array_0[0] <= 254) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L100] RET updateVariables() [L101] CALL step() [L40] BOOL_unsigned_char_Array_0[0] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L40] COND FALSE !(BOOL_unsigned_char_Array_0[0]) [L45] COND FALSE !((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L50] EXPR BOOL_unsigned_char_Array_0[1] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L50] COND TRUE ! BOOL_unsigned_char_Array_0[1] [L51] EXPR double_Array_0[0][1] [L51] EXPR double_Array_0[1][0] [L51] double_Array_0[1][1] = (double_Array_0[0][1] - double_Array_0[1][0]) [L55] EXPR double_Array_0[0][1] [L55] EXPR double_Array_0[1][0] [L55] EXPR double_Array_0[1][1] [L55] EXPR double_Array_0[1][1] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L55] COND FALSE !((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) [L68] EXPR double_Array_0[0][1] [L68] double_Array_0[0][0] = double_Array_0[0][1] [L101] RET step() [L102] CALL, EXPR property() [L92] EXPR BOOL_unsigned_char_Array_0[1] VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR (! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1]))))) [L92] EXPR double_Array_0[1][1] [L92] EXPR double_Array_0[0][1] [L92] EXPR double_Array_0[1][0] [L92] EXPR (! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1]))))) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR ((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR ((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR (((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1])))) && (((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) ? ((last_1_unsigned_short_int_Array_0_0_ > last_1_unsigned_short_int_Array_0_0_) ? (unsigned_char_Array_0[1] == ((unsigned char) unsigned_char_Array_0[0])) : 1) : 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR (((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1])))) && (((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) ? ((last_1_unsigned_short_int_Array_0_0_ > last_1_unsigned_short_int_Array_0_0_) ? (unsigned_char_Array_0[1] == ((unsigned char) unsigned_char_Array_0[0])) : 1) : 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR ((((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1])))) && (((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) ? ((last_1_unsigned_short_int_Array_0_0_ > last_1_unsigned_short_int_Array_0_0_) ? (unsigned_char_Array_0[1] == ((unsigned char) unsigned_char_Array_0[0])) : 1) : 1)) && (BOOL_unsigned_char_Array_0[0] ? (((double_Array_0[1][0] * (double_Array_0[0][1] - 5.3)) <= last_1_double_Array_0_0__0_) ? (unsigned_short_int_Array_0[0] == ((unsigned short int) last_1_unsigned_char_Array_0_1_)) : 1) : 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92] EXPR ((((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1])))) && (((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) ? ((last_1_unsigned_short_int_Array_0_0_ > last_1_unsigned_short_int_Array_0_0_) ? (unsigned_char_Array_0[1] == ((unsigned char) unsigned_char_Array_0[0])) : 1) : 1)) && (BOOL_unsigned_char_Array_0[0] ? (((double_Array_0[1][0] * (double_Array_0[0][1] - 5.3)) <= last_1_double_Array_0_0__0_) ? (unsigned_short_int_Array_0[0] == ((unsigned short int) last_1_unsigned_char_Array_0_1_)) : 1) : 1) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L92-L93] return ((((! BOOL_unsigned_char_Array_0[1]) ? (double_Array_0[1][1] == ((double) (double_Array_0[0][1] - double_Array_0[1][0]))) : (double_Array_0[1][1] == ((double) ((((16.2) < (double_Array_0[0][1])) ? (16.2) : (double_Array_0[0][1])))))) && (((double_Array_0[0][1] + (double_Array_0[1][0] + double_Array_0[1][1])) != double_Array_0[1][1]) ? (BOOL_unsigned_char_Array_0[1] ? (((- unsigned_short_int_Array_0[0]) <= unsigned_char_Array_0[1]) ? (BOOL_unsigned_char_Array_0[0] ? (double_Array_0[0][0] == ((double) double_Array_0[1][0])) : 1) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1]))) : (double_Array_0[0][0] == ((double) double_Array_0[0][1])))) && (((last_1_unsigned_short_int_Array_0_0_ + last_1_unsigned_short_int_Array_0_0_) < last_1_unsigned_short_int_Array_0_0_) ? ((last_1_unsigned_short_int_Array_0_0_ > last_1_unsigned_short_int_Array_0_0_) ? (unsigned_char_Array_0[1] == ((unsigned char) unsigned_char_Array_0[0])) : 1) : 1)) && (BOOL_unsigned_char_Array_0[0] ? (((double_Array_0[1][0] * (double_Array_0[0][1] - 5.3)) <= last_1_double_Array_0_0__0_) ? (unsigned_short_int_Array_0[0] == ((unsigned short int) last_1_unsigned_char_Array_0_1_)) : 1) : 1) ; [L102] RET, EXPR property() [L102] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] [L19] reach_error() VAL [BOOL_unsigned_char_Array_0={4:0}, double_Array_0={5:0}, isInitial=1, last_1_double_Array_0_0__0_=21/4, last_1_unsigned_char_Array_0_1_=100, last_1_unsigned_short_int_Array_0_0_=5, unsigned_char_Array_0={6:0}, unsigned_short_int_Array_0={7:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 79 locations, 125 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.0s, OverallIterations: 2, TraceHistogramMax: 8, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 104 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 104 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 75 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=79occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 222 NumberOfCodeBlocks, 222 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 146 ConstructedInterpolants, 0 QuantifiedInterpolants, 146 SizeOfPredicates, 0 NumberOfNonLiveVariables, 288 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 210/224 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-03-17 05:19:02,674 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 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: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 32bit --witnessprinter.graph.data.programhash f190a6c4b0edbc49af141a983db7689f2287405b384242554734ee34095f2f5c --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-17 05:19:04,547 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-17 05:19:04,632 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-17 05:19:04,642 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-17 05:19:04,642 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-17 05:19:04,667 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-17 05:19:04,669 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-17 05:19:04,669 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-17 05:19:04,669 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-17 05:19:04,670 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-17 05:19:04,670 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-17 05:19:04,670 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-17 05:19:04,671 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Use SBE=true [2025-03-17 05:19:04,671 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-17 05:19:04,671 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-17 05:19:04,671 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 05:19:04,672 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-17 05:19:04,672 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-17 05:19:04,672 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/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 -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> f190a6c4b0edbc49af141a983db7689f2287405b384242554734ee34095f2f5c [2025-03-17 05:19:04,944 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-17 05:19:04,951 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-17 05:19:04,953 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-17 05:19:04,956 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-17 05:19:04,956 INFO L274 PluginConnector]: CDTParser initialized [2025-03-17 05:19:04,957 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:06,124 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/725fbb546/8f55241c040c43e69ea79fbc74d6cc52/FLAGf530fd2bc [2025-03-17 05:19:06,295 INFO L384 CDTParser]: Found 1 translation units. [2025-03-17 05:19:06,296 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:06,301 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/725fbb546/8f55241c040c43e69ea79fbc74d6cc52/FLAGf530fd2bc [2025-03-17 05:19:06,312 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/725fbb546/8f55241c040c43e69ea79fbc74d6cc52 [2025-03-17 05:19:06,314 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-17 05:19:06,316 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-17 05:19:06,317 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-17 05:19:06,318 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-17 05:19:06,321 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-17 05:19:06,322 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,323 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2adbb4aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06, skipping insertion in model container [2025-03-17 05:19:06,323 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,337 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-17 05:19:06,427 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i[915,928] [2025-03-17 05:19:06,480 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 05:19:06,491 INFO L200 MainTranslator]: Completed pre-run [2025-03-17 05:19:06,498 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-a_file-0.i[915,928] [2025-03-17 05:19:06,534 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 05:19:06,554 INFO L204 MainTranslator]: Completed translation [2025-03-17 05:19:06,556 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06 WrapperNode [2025-03-17 05:19:06,556 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-17 05:19:06,557 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-17 05:19:06,557 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-17 05:19:06,558 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-17 05:19:06,563 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,582 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,613 INFO L138 Inliner]: procedures = 33, calls = 114, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 362 [2025-03-17 05:19:06,613 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-17 05:19:06,614 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-17 05:19:06,614 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-17 05:19:06,614 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-17 05:19:06,625 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,625 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,629 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,657 INFO L175 MemorySlicer]: Split 91 memory accesses to 5 slices as follows [2, 16, 55, 12, 6]. 60 percent of accesses are in the largest equivalence class. The 11 initializations are split as follows [2, 2, 4, 2, 1]. The 13 writes are split as follows [0, 2, 8, 2, 1]. [2025-03-17 05:19:06,657 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,657 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,670 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,671 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,673 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,674 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,677 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-17 05:19:06,683 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-17 05:19:06,683 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-17 05:19:06,683 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-17 05:19:06,684 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (1/1) ... [2025-03-17 05:19:06,688 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 05:19:06,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 05:19:06,711 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-17 05:19:06,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-17 05:19:06,734 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#0 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#1 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#2 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#3 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#4 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#0 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#1 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#2 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#3 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#4 [2025-03-17 05:19:06,735 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#0 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#1 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#2 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#3 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#4 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#0 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#1 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#2 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#3 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#4 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#1 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#2 [2025-03-17 05:19:06,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#3 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#4 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#0 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#1 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#2 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#3 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#4 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#0 [2025-03-17 05:19:06,737 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#1 [2025-03-17 05:19:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#2 [2025-03-17 05:19:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#3 [2025-03-17 05:19:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#4 [2025-03-17 05:19:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-17 05:19:06,738 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-17 05:19:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-17 05:19:06,739 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#0 [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#1 [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#2 [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#3 [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#4 [2025-03-17 05:19:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#0 [2025-03-17 05:19:06,740 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#1 [2025-03-17 05:19:06,740 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#2 [2025-03-17 05:19:06,740 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#3 [2025-03-17 05:19:06,740 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#4 [2025-03-17 05:19:06,859 INFO L256 CfgBuilder]: Building ICFG [2025-03-17 05:19:06,861 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-17 05:19:29,120 INFO L1322 $ProcedureCfgBuilder]: dead code at ProgramPoint L92: havoc property_#t~mem54#1;havoc property_#t~ite62#1;havoc property_#t~mem57#1;havoc property_#t~mem55#1;havoc property_#t~mem56#1;havoc property_#t~mem61#1;havoc property_#t~mem58#1;havoc property_#t~ite60#1;havoc property_#t~mem59#1;havoc property_#t~mem65#1;havoc property_#t~mem63#1;havoc property_#t~mem64#1;havoc property_#t~mem66#1;havoc property_#t~ite82#1;havoc property_#t~mem67#1;havoc property_#t~ite79#1;havoc property_#t~mem68#1;havoc property_#t~mem69#1;havoc property_#t~ite76#1;havoc property_#t~mem70#1;havoc property_#t~ite73#1;havoc property_#t~mem72#1;havoc property_#t~mem71#1;havoc property_#t~mem75#1;havoc property_#t~mem74#1;havoc property_#t~mem78#1;havoc property_#t~mem77#1;havoc property_#t~mem81#1;havoc property_#t~mem80#1;havoc property_#t~short83#1;havoc property_#t~ite87#1;havoc property_#t~ite86#1;havoc property_#t~mem85#1;havoc property_#t~mem84#1;havoc property_#t~short88#1;havoc property_#t~mem89#1;havoc property_#t~ite94#1;havoc property_#t~mem91#1;havoc property_#t~mem90#1;havoc property_#t~ite93#1;havoc property_#t~mem92#1;havoc property_#t~short95#1; [2025-03-17 05:19:29,141 INFO L? ?]: Removed 74 outVars from TransFormulas that were not future-live. [2025-03-17 05:19:29,141 INFO L307 CfgBuilder]: Performing block encoding [2025-03-17 05:19:29,148 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-17 05:19:29,148 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-17 05:19:29,148 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 05:19:29 BoogieIcfgContainer [2025-03-17 05:19:29,149 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-17 05:19:29,151 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-17 05:19:29,151 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-17 05:19:29,171 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-17 05:19:29,174 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 17.03 05:19:06" (1/3) ... [2025-03-17 05:19:29,174 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@73493656 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 05:19:29, skipping insertion in model container [2025-03-17 05:19:29,175 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 05:19:06" (2/3) ... [2025-03-17 05:19:29,175 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@73493656 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 05:19:29, skipping insertion in model container [2025-03-17 05:19:29,175 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 05:19:29" (3/3) ... [2025-03-17 05:19:29,176 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-a_file-0.i [2025-03-17 05:19:29,186 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-17 05:19:29,187 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-a_file-0.i that has 2 procedures, 79 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-17 05:19:29,223 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-17 05:19:29,231 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;@6538be0f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-17 05:19:29,231 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-17 05:19:29,236 INFO L276 IsEmpty]: Start isEmpty. Operand has 79 states, 68 states have (on average 1.4852941176470589) internal successors, (101), 69 states have internal predecessors, (101), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-17 05:19:29,242 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2025-03-17 05:19:29,242 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 05:19:29,243 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-03-17 05:19:29,243 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 05:19:29,246 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 05:19:29,247 INFO L85 PathProgramCache]: Analyzing trace with hash -1115205896, now seen corresponding path program 1 times [2025-03-17 05:19:29,254 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-17 05:19:29,254 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [35484751] [2025-03-17 05:19:29,255 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:19:29,255 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-17 05:19:29,255 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-17 05:19:29,259 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-17 05:19:29,260 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2025-03-17 05:19:29,367 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:29,702 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:29,702 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:29,702 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 05:19:29,722 INFO L256 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-17 05:19:29,726 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 05:19:29,754 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 54 proven. 0 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2025-03-17 05:19:29,754 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 05:19:29,755 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-17 05:19:29,755 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [35484751] [2025-03-17 05:19:29,756 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [35484751] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 05:19:29,756 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-17 05:19:29,756 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-17 05:19:29,757 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [561619218] [2025-03-17 05:19:29,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 05:19:29,762 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-17 05:19:29,762 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-17 05:19:29,778 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-17 05:19:29,780 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 05:19:29,782 INFO L87 Difference]: Start difference. First operand has 79 states, 68 states have (on average 1.4852941176470589) internal successors, (101), 69 states have internal predecessors, (101), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 20.5) internal successors, (41), 2 states have internal predecessors, (41), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:19:29,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-17 05:19:29,798 INFO L93 Difference]: Finished difference Result 152 states and 235 transitions. [2025-03-17 05:19:29,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-17 05:19:29,800 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 20.5) internal successors, (41), 2 states have internal predecessors, (41), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 74 [2025-03-17 05:19:29,800 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-17 05:19:29,804 INFO L225 Difference]: With dead ends: 152 [2025-03-17 05:19:29,804 INFO L226 Difference]: Without dead ends: 74 [2025-03-17 05:19:29,807 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 05:19:29,808 INFO L435 NwaCegarLoop]: 104 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 104 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-17 05:19:29,809 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-17 05:19:29,818 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2025-03-17 05:19:29,835 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2025-03-17 05:19:29,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 64 states have (on average 1.375) internal successors, (88), 64 states have internal predecessors, (88), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-17 05:19:29,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 104 transitions. [2025-03-17 05:19:29,843 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 104 transitions. Word has length 74 [2025-03-17 05:19:29,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-17 05:19:29,844 INFO L471 AbstractCegarLoop]: Abstraction has 74 states and 104 transitions. [2025-03-17 05:19:29,844 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 20.5) internal successors, (41), 2 states have internal predecessors, (41), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:19:29,844 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 104 transitions. [2025-03-17 05:19:29,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2025-03-17 05:19:29,846 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 05:19:29,847 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-03-17 05:19:29,863 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-03-17 05:19:30,047 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-17 05:19:30,048 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 05:19:30,048 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 05:19:30,048 INFO L85 PathProgramCache]: Analyzing trace with hash -918136366, now seen corresponding path program 1 times [2025-03-17 05:19:30,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-17 05:19:30,049 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [533651298] [2025-03-17 05:19:30,049 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:19:30,049 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-17 05:19:30,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-17 05:19:30,051 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-17 05:19:30,052 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-03-17 05:19:30,135 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 74 statements into 1 equivalence classes. [2025-03-17 05:19:30,450 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 74 of 74 statements. [2025-03-17 05:19:30,450 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:19:30,450 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 05:19:30,469 INFO L256 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-03-17 05:19:30,473 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 05:19:30,949 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-17 05:19:30,950 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 173 treesize of output 65 [2025-03-17 05:19:31,071 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 64 proven. 0 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2025-03-17 05:19:31,071 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 05:19:31,071 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-17 05:19:31,071 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [533651298] [2025-03-17 05:19:31,071 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [533651298] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 05:19:31,071 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-17 05:19:31,072 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-17 05:19:31,072 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1010151836] [2025-03-17 05:19:31,072 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 05:19:31,073 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-17 05:19:31,073 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-17 05:19:31,074 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-17 05:19:31,074 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-03-17 05:19:31,074 INFO L87 Difference]: Start difference. First operand 74 states and 104 transitions. Second operand has 6 states, 6 states have (on average 6.666666666666667) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:19:35,737 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.10s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:39,747 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:42,868 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.12s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:47,042 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.12s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:49,056 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:50,650 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.17s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:54,343 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.54s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:19:58,530 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.08s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:02,537 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:06,206 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.67s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:08,944 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.68s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:09,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-17 05:20:09,111 INFO L93 Difference]: Finished difference Result 148 states and 208 transitions. [2025-03-17 05:20:09,147 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-03-17 05:20:09,148 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 6.666666666666667) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 74 [2025-03-17 05:20:09,149 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-17 05:20:09,149 INFO L225 Difference]: With dead ends: 148 [2025-03-17 05:20:09,149 INFO L226 Difference]: Without dead ends: 75 [2025-03-17 05:20:09,150 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 69 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=24, Invalid=48, Unknown=0, NotChecked=0, Total=72 [2025-03-17 05:20:09,150 INFO L435 NwaCegarLoop]: 79 mSDtfsCounter, 87 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 124 mSolverCounterSat, 1 mSolverCounterUnsat, 5 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 37.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 87 SdHoareTripleChecker+Valid, 281 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 124 IncrementalHoareTripleChecker+Invalid, 5 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 37.9s IncrementalHoareTripleChecker+Time [2025-03-17 05:20:09,150 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [87 Valid, 281 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 124 Invalid, 5 Unknown, 0 Unchecked, 37.9s Time] [2025-03-17 05:20:09,151 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2025-03-17 05:20:09,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 74. [2025-03-17 05:20:09,159 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 64 states have (on average 1.359375) internal successors, (87), 64 states have internal predecessors, (87), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-17 05:20:09,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 103 transitions. [2025-03-17 05:20:09,161 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 103 transitions. Word has length 74 [2025-03-17 05:20:09,162 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-17 05:20:09,162 INFO L471 AbstractCegarLoop]: Abstraction has 74 states and 103 transitions. [2025-03-17 05:20:09,162 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 6.666666666666667) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:20:09,162 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 103 transitions. [2025-03-17 05:20:09,163 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2025-03-17 05:20:09,163 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 05:20:09,163 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-03-17 05:20:09,178 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Ended with exit code 0 [2025-03-17 05:20:09,363 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-17 05:20:09,364 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 05:20:09,364 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 05:20:09,364 INFO L85 PathProgramCache]: Analyzing trace with hash 1113213172, now seen corresponding path program 1 times [2025-03-17 05:20:09,365 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-17 05:20:09,365 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1014989981] [2025-03-17 05:20:09,365 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 05:20:09,365 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-17 05:20:09,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-17 05:20:09,367 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-17 05:20:09,368 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2025-03-17 05:20:09,441 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 76 statements into 1 equivalence classes. [2025-03-17 05:20:09,739 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 76 of 76 statements. [2025-03-17 05:20:09,739 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 05:20:09,739 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 05:20:09,752 INFO L256 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-03-17 05:20:09,755 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 05:20:10,238 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-17 05:20:10,239 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 173 treesize of output 65 [2025-03-17 05:20:10,337 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 60 proven. 0 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2025-03-17 05:20:10,338 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 05:20:10,338 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-17 05:20:10,338 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1014989981] [2025-03-17 05:20:10,338 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1014989981] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 05:20:10,338 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-17 05:20:10,338 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-17 05:20:10,338 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1304649793] [2025-03-17 05:20:10,338 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 05:20:10,346 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-17 05:20:10,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-17 05:20:10,346 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-17 05:20:10,347 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-03-17 05:20:10,347 INFO L87 Difference]: Start difference. First operand 74 states and 103 transitions. Second operand has 6 states, 6 states have (on average 7.0) internal successors, (42), 5 states have internal predecessors, (42), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-17 05:20:14,960 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.07s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:18,964 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:20,535 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.57s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:24,743 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.11s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:26,981 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.24s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:28,374 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.02s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:35,598 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.07s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:39,601 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:41,329 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.73s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-17 05:20:43,649 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.32s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers []