./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.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_loopvsstraightlinecode_25-while_file-24.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 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-17 03:36:46,167 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-17 03:36:46,223 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-17 03:36:46,229 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-17 03:36:46,233 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-17 03:36:46,251 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-17 03:36:46,251 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-17 03:36:46,251 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-17 03:36:46,252 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-17 03:36:46,252 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-17 03:36:46,252 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-17 03:36:46,252 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-17 03:36:46,253 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-17 03:36:46,253 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-17 03:36:46,253 INFO L153 SettingsManager]: * Use SBE=true [2025-03-17 03:36:46,253 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-17 03:36:46,254 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-17 03:36:46,254 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-17 03:36:46,254 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-17 03:36:46,254 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-17 03:36:46,254 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-17 03:36:46,255 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 03:36:46,255 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-17 03:36:46,255 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-17 03:36:46,256 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-17 03:36:46,256 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 -> 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e [2025-03-17 03:36:46,475 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-17 03:36:46,480 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-17 03:36:46,481 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-17 03:36:46,482 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-17 03:36:46,482 INFO L274 PluginConnector]: CDTParser initialized [2025-03-17 03:36:46,483 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:47,643 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c979f621d/984fc7704625493eb667896bc34a2a44/FLAG4eb9ea068 [2025-03-17 03:36:47,881 INFO L384 CDTParser]: Found 1 translation units. [2025-03-17 03:36:47,882 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:47,888 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c979f621d/984fc7704625493eb667896bc34a2a44/FLAG4eb9ea068 [2025-03-17 03:36:47,906 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c979f621d/984fc7704625493eb667896bc34a2a44 [2025-03-17 03:36:47,908 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-17 03:36:47,910 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-17 03:36:47,911 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-17 03:36:47,911 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-17 03:36:47,914 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-17 03:36:47,915 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 03:36:47" (1/1) ... [2025-03-17 03:36:47,915 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@178c604e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:47, skipping insertion in model container [2025-03-17 03:36:47,916 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 03:36:47" (1/1) ... [2025-03-17 03:36:47,932 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-17 03:36:48,037 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_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-03-17 03:36:48,075 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 03:36:48,085 INFO L200 MainTranslator]: Completed pre-run [2025-03-17 03:36:48,096 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_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-03-17 03:36:48,116 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 03:36:48,127 INFO L204 MainTranslator]: Completed translation [2025-03-17 03:36:48,127 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48 WrapperNode [2025-03-17 03:36:48,127 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-17 03:36:48,129 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-17 03:36:48,129 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-17 03:36:48,129 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-17 03:36:48,134 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,140 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,167 INFO L138 Inliner]: procedures = 26, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 99 [2025-03-17 03:36:48,167 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-17 03:36:48,168 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-17 03:36:48,168 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-17 03:36:48,168 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-17 03:36:48,176 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,176 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,178 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,186 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-17 03:36:48,186 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,186 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,190 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,193 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,194 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,194 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,196 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-17 03:36:48,197 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-17 03:36:48,197 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-17 03:36:48,197 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-17 03:36:48,198 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (1/1) ... [2025-03-17 03:36:48,201 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 03:36:48,209 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 03:36:48,220 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 03:36:48,223 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 03:36:48,238 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-17 03:36:48,238 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-17 03:36:48,238 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-17 03:36:48,238 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-17 03:36:48,238 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-17 03:36:48,238 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-17 03:36:48,284 INFO L256 CfgBuilder]: Building ICFG [2025-03-17 03:36:48,286 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-17 03:36:48,511 INFO L? ?]: Removed 6 outVars from TransFormulas that were not future-live. [2025-03-17 03:36:48,511 INFO L307 CfgBuilder]: Performing block encoding [2025-03-17 03:36:48,526 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-17 03:36:48,526 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-17 03:36:48,526 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 03:36:48 BoogieIcfgContainer [2025-03-17 03:36:48,527 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-17 03:36:48,529 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-17 03:36:48,529 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-17 03:36:48,533 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-17 03:36:48,533 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 17.03 03:36:47" (1/3) ... [2025-03-17 03:36:48,534 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7cfecbc4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 03:36:48, skipping insertion in model container [2025-03-17 03:36:48,534 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:48" (2/3) ... [2025-03-17 03:36:48,534 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7cfecbc4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 03:36:48, skipping insertion in model container [2025-03-17 03:36:48,534 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 03:36:48" (3/3) ... [2025-03-17 03:36:48,535 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:48,546 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-17 03:36:48,547 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-24.i that has 2 procedures, 42 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-17 03:36:48,586 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-17 03:36:48,598 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;@3f0a82ef, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-17 03:36:48,602 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-17 03:36:48,604 INFO L276 IsEmpty]: Start isEmpty. Operand has 42 states, 24 states have (on average 1.375) internal successors, (33), 25 states have internal predecessors, (33), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-03-17 03:36:48,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2025-03-17 03:36:48,611 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 03:36:48,611 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 03:36:48,611 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 03:36:48,615 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 03:36:48,615 INFO L85 PathProgramCache]: Analyzing trace with hash 858255607, now seen corresponding path program 1 times [2025-03-17 03:36:48,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-17 03:36:48,624 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971545531] [2025-03-17 03:36:48,624 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 03:36:48,625 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-17 03:36:48,701 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:48,716 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:48,719 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:48,719 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 03:36:48,845 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 0 proven. 28 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2025-03-17 03:36:48,846 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-17 03:36:48,847 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1971545531] [2025-03-17 03:36:48,848 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1971545531] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-17 03:36:48,848 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1573331283] [2025-03-17 03:36:48,848 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 03:36:48,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-17 03:36:48,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 03:36:48,852 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 03:36:48,853 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 03:36:48,928 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:48,973 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:48,973 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:48,973 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 03:36:48,976 INFO L256 TraceCheckSpWp]: Trace formula consists of 216 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-17 03:36:48,983 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 03:36:49,009 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2025-03-17 03:36:49,009 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 03:36:49,009 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1573331283] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 03:36:49,009 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-17 03:36:49,009 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-17 03:36:49,012 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539192108] [2025-03-17 03:36:49,012 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 03:36:49,014 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-17 03:36:49,015 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-17 03:36:49,025 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-17 03:36:49,026 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 03:36:49,027 INFO L87 Difference]: Start difference. First operand has 42 states, 24 states have (on average 1.375) internal successors, (33), 25 states have internal predecessors, (33), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) [2025-03-17 03:36:49,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-17 03:36:49,040 INFO L93 Difference]: Finished difference Result 81 states and 139 transitions. [2025-03-17 03:36:49,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-17 03:36:49,041 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) Word has length 92 [2025-03-17 03:36:49,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-17 03:36:49,046 INFO L225 Difference]: With dead ends: 81 [2025-03-17 03:36:49,046 INFO L226 Difference]: Without dead ends: 40 [2025-03-17 03:36:49,049 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 93 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 03:36:49,051 INFO L435 NwaCegarLoop]: 59 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, 59 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 03:36:49,051 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-17 03:36:49,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2025-03-17 03:36:49,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2025-03-17 03:36:49,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-03-17 03:36:49,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 59 transitions. [2025-03-17 03:36:49,075 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 59 transitions. Word has length 92 [2025-03-17 03:36:49,075 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-17 03:36:49,075 INFO L471 AbstractCegarLoop]: Abstraction has 40 states and 59 transitions. [2025-03-17 03:36:49,075 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) [2025-03-17 03:36:49,075 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 59 transitions. [2025-03-17 03:36:49,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2025-03-17 03:36:49,078 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 03:36:49,078 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 03:36:49,085 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-17 03:36:49,282 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 03:36:49,282 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 03:36:49,283 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 03:36:49,283 INFO L85 PathProgramCache]: Analyzing trace with hash -1533806952, now seen corresponding path program 1 times [2025-03-17 03:36:49,283 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-17 03:36:49,283 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1566949011] [2025-03-17 03:36:49,283 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 03:36:49,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-17 03:36:49,315 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:49,405 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:49,405 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:49,405 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-17 03:36:49,405 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-17 03:36:49,411 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:49,454 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:49,455 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:49,455 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-17 03:36:49,481 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-17 03:36:49,482 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-17 03:36:49,482 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-17 03:36:49,484 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-17 03:36:49,486 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-17 03:36:49,528 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-17 03:36:49,531 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 17.03 03:36:49 BoogieIcfgContainer [2025-03-17 03:36:49,532 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-17 03:36:49,533 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-17 03:36:49,533 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-17 03:36:49,533 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-17 03:36:49,533 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 03:36:48" (3/4) ... [2025-03-17 03:36:49,535 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-17 03:36:49,536 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-17 03:36:49,537 INFO L158 Benchmark]: Toolchain (without parser) took 1626.80ms. Allocated memory is still 142.6MB. Free memory was 111.4MB in the beginning and 86.7MB in the end (delta: 24.7MB). Peak memory consumption was 22.1MB. Max. memory is 16.1GB. [2025-03-17 03:36:49,537 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 123.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 03:36:49,537 INFO L158 Benchmark]: CACSL2BoogieTranslator took 217.38ms. Allocated memory is still 142.6MB. Free memory was 111.4MB in the beginning and 98.5MB in the end (delta: 12.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-17 03:36:49,538 INFO L158 Benchmark]: Boogie Procedure Inliner took 38.16ms. Allocated memory is still 142.6MB. Free memory was 98.5MB in the beginning and 96.2MB in the end (delta: 2.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-17 03:36:49,538 INFO L158 Benchmark]: Boogie Preprocessor took 29.03ms. Allocated memory is still 142.6MB. Free memory was 96.2MB in the beginning and 92.6MB in the end (delta: 3.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 03:36:49,539 INFO L158 Benchmark]: IcfgBuilder took 329.42ms. Allocated memory is still 142.6MB. Free memory was 92.6MB in the beginning and 76.0MB in the end (delta: 16.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-17 03:36:49,539 INFO L158 Benchmark]: TraceAbstraction took 1002.80ms. Allocated memory is still 142.6MB. Free memory was 75.5MB in the beginning and 86.8MB in the end (delta: -11.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 03:36:49,539 INFO L158 Benchmark]: Witness Printer took 3.67ms. Allocated memory is still 142.6MB. Free memory was 86.8MB in the beginning and 86.7MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-17 03:36:49,540 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.19ms. Allocated memory is still 201.3MB. Free memory is still 123.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 217.38ms. Allocated memory is still 142.6MB. Free memory was 111.4MB in the beginning and 98.5MB in the end (delta: 12.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 38.16ms. Allocated memory is still 142.6MB. Free memory was 98.5MB in the beginning and 96.2MB in the end (delta: 2.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 29.03ms. Allocated memory is still 142.6MB. Free memory was 96.2MB in the beginning and 92.6MB in the end (delta: 3.6MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 329.42ms. Allocated memory is still 142.6MB. Free memory was 92.6MB in the beginning and 76.0MB in the end (delta: 16.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 1002.80ms. Allocated memory is still 142.6MB. Free memory was 75.5MB in the beginning and 86.8MB in the end (delta: -11.3MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 3.67ms. Allocated memory is still 142.6MB. Free memory was 86.8MB in the beginning and 86.7MB 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 someBinaryFLOATComparisonOperation at line 72, overapproximation of someBinaryFLOATComparisonOperation at line 46, overapproximation of someBinaryFLOATComparisonOperation at line 64, overapproximation of someBinaryFLOATComparisonOperation at line 88, overapproximation of someBinaryFLOATComparisonOperation at line 83, overapproximation of someBinaryFLOATComparisonOperation at line 37. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed char var_1_1 = 32; [L23] unsigned char var_1_2 = 0; [L24] float var_1_3 = 127.1; [L25] signed char var_1_4 = 16; [L26] signed char var_1_5 = 4; [L27] unsigned char var_1_6 = 8; [L28] float var_1_7 = 1000000.6; [L29] unsigned char var_1_8 = 64; [L30] unsigned char var_1_9 = 64; [L31] unsigned char var_1_10 = 128; [L32] unsigned char var_1_11 = 32; [L33] float var_1_12 = 16.8; [L92] isInitial = 1 [L93] FCALL initially() [L94] COND TRUE 1 [L95] FCALL updateLastVariables() [L96] CALL updateVariables() [L60] var_1_2 = __VERIFIER_nondet_uchar() [L61] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L61] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L62] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L62] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_3=1271/10, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L63] var_1_3 = __VERIFIER_nondet_float() [L64] CALL assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L64] RET assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=16, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L65] var_1_4 = __VERIFIER_nondet_char() [L66] CALL assume_abort_if_not(var_1_4 >= -1) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L66] RET assume_abort_if_not(var_1_4 >= -1) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L67] CALL assume_abort_if_not(var_1_4 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L67] RET assume_abort_if_not(var_1_4 <= 126) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=4, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L68] var_1_5 = __VERIFIER_nondet_char() [L69] CALL assume_abort_if_not(var_1_5 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L69] RET assume_abort_if_not(var_1_5 >= 0) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L70] CALL assume_abort_if_not(var_1_5 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L70] RET assume_abort_if_not(var_1_5 <= 126) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_7=5000003/5, var_1_8=64, var_1_9=64] [L71] var_1_7 = __VERIFIER_nondet_float() [L72] CALL assume_abort_if_not((var_1_7 >= -922337.2036854776000e+13F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=64, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=64, var_1_9=64] [L72] RET assume_abort_if_not((var_1_7 >= -922337.2036854776000e+13F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=64, var_1_9=64] [L73] var_1_8 = __VERIFIER_nondet_uchar() [L74] CALL assume_abort_if_not(var_1_8 >= 63) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L74] RET assume_abort_if_not(var_1_8 >= 63) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L75] CALL assume_abort_if_not(var_1_8 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L75] RET assume_abort_if_not(var_1_8 <= 127) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=64] [L76] var_1_9 = __VERIFIER_nondet_uchar() [L77] CALL assume_abort_if_not(var_1_9 >= 64) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L77] RET assume_abort_if_not(var_1_9 >= 64) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L78] CALL assume_abort_if_not(var_1_9 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L78] RET assume_abort_if_not(var_1_9 <= 127) VAL [isInitial=1, var_1_10=128, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L79] var_1_10 = __VERIFIER_nondet_uchar() [L80] CALL assume_abort_if_not(var_1_10 >= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L80] RET assume_abort_if_not(var_1_10 >= 127) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L81] CALL assume_abort_if_not(var_1_10 <= 254) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L81] RET assume_abort_if_not(var_1_10 <= 254) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_12=84/5, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L82] var_1_12 = __VERIFIER_nondet_float() [L83] CALL assume_abort_if_not((var_1_12 >= -922337.2036854776000e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854776000e+12F && var_1_12 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=127, var_1_11=32, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L83] RET assume_abort_if_not((var_1_12 >= -922337.2036854776000e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854776000e+12F && var_1_12 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=32, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L96] RET updateVariables() [L97] CALL step() [L37] COND FALSE !(var_1_2 || (64.75f < var_1_3)) [L44] var_1_1 = var_1_5 VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=72, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=8, var_1_8=127, var_1_9=72] [L46] COND TRUE var_1_3 <= var_1_7 [L47] var_1_6 = ((((((var_1_8 + var_1_9)) > (((((var_1_10) > (200)) ? (var_1_10) : (200))))) ? ((var_1_8 + var_1_9)) : (((((var_1_10) > (200)) ? (var_1_10) : (200)))))) - var_1_5) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=72, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=128, var_1_8=127, var_1_9=72] [L51] COND FALSE !(((((var_1_6) > (var_1_8)) ? (var_1_6) : (var_1_8))) <= var_1_10) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=72, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=128, var_1_8=127, var_1_9=72] [L97] RET step() [L98] CALL, EXPR property() [L88-L89] return (((var_1_2 || (64.75f < var_1_3)) ? (var_1_2 ? (var_1_1 == ((signed char) (var_1_4 - var_1_5))) : (var_1_1 == ((signed char) var_1_4))) : (var_1_1 == ((signed char) var_1_5))) && ((var_1_3 <= var_1_7) ? (var_1_6 == ((unsigned char) ((((((var_1_8 + var_1_9)) > (((((var_1_10) > (200)) ? (var_1_10) : (200))))) ? ((var_1_8 + var_1_9)) : (((((var_1_10) > (200)) ? (var_1_10) : (200)))))) - var_1_5))) : (var_1_6 == ((unsigned char) var_1_10)))) && ((((((var_1_6) > (var_1_8)) ? (var_1_6) : (var_1_8))) <= var_1_10) ? ((var_1_3 == (var_1_7 + var_1_12)) ? (var_1_11 == ((unsigned char) (var_1_9 + var_1_5))) : (var_1_11 == ((unsigned char) var_1_9))) : 1) ; [L98] RET, EXPR property() [L98] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=72, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=128, var_1_8=127, var_1_9=72] [L19] reach_error() VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=72, var_1_2=0, var_1_4=71, var_1_5=72, var_1_6=128, var_1_8=127, var_1_9=72] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 42 locations, 78 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.9s, OverallIterations: 2, TraceHistogramMax: 15, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 59 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, 59 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 93 GetRequests, 93 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=42occurred 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.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.2s InterpolantComputationTime, 276 NumberOfCodeBlocks, 276 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 182 ConstructedInterpolants, 0 QuantifiedInterpolants, 182 SizeOfPredicates, 0 NumberOfNonLiveVariables, 216 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 812/840 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 03:36:49,557 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_loopvsstraightlinecode_25-while_file-24.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 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-17 03:36:51,373 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-17 03:36:51,455 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-17 03:36:51,466 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-17 03:36:51,466 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-17 03:36:51,484 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-17 03:36:51,485 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-17 03:36:51,485 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-17 03:36:51,485 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-17 03:36:51,485 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-17 03:36:51,486 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-17 03:36:51,486 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-17 03:36:51,486 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-17 03:36:51,486 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-17 03:36:51,486 INFO L153 SettingsManager]: * Use SBE=true [2025-03-17 03:36:51,486 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-17 03:36:51,486 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-17 03:36:51,486 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-17 03:36:51,487 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-17 03:36:51,488 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-17 03:36:51,488 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-17 03:36:51,488 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-17 03:36:51,488 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-17 03:36:51,488 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-17 03:36:51,488 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 03:36:51,488 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-17 03:36:51,489 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-17 03:36:51,489 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 -> 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e [2025-03-17 03:36:51,745 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-17 03:36:51,751 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-17 03:36:51,753 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-17 03:36:51,754 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-17 03:36:51,755 INFO L274 PluginConnector]: CDTParser initialized [2025-03-17 03:36:51,757 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:52,885 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/746234423/b79e6854fd6c42e892dc0ce745a81176/FLAG67bcd1447 [2025-03-17 03:36:53,101 INFO L384 CDTParser]: Found 1 translation units. [2025-03-17 03:36:53,102 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:53,109 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/746234423/b79e6854fd6c42e892dc0ce745a81176/FLAG67bcd1447 [2025-03-17 03:36:53,471 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/746234423/b79e6854fd6c42e892dc0ce745a81176 [2025-03-17 03:36:53,474 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-17 03:36:53,475 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-17 03:36:53,477 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-17 03:36:53,477 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-17 03:36:53,480 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-17 03:36:53,481 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,484 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2320be4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53, skipping insertion in model container [2025-03-17 03:36:53,484 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,499 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-17 03:36:53,608 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_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-03-17 03:36:53,651 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 03:36:53,664 INFO L200 MainTranslator]: Completed pre-run [2025-03-17 03:36:53,674 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_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-03-17 03:36:53,693 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-17 03:36:53,707 INFO L204 MainTranslator]: Completed translation [2025-03-17 03:36:53,709 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53 WrapperNode [2025-03-17 03:36:53,709 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-17 03:36:53,710 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-17 03:36:53,710 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-17 03:36:53,710 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-17 03:36:53,715 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,724 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,737 INFO L138 Inliner]: procedures = 27, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 97 [2025-03-17 03:36:53,737 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-17 03:36:53,738 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-17 03:36:53,738 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-17 03:36:53,738 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-17 03:36:53,744 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,745 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,747 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,754 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-17 03:36:53,755 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,755 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,761 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,762 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,763 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,763 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,765 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-17 03:36:53,765 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-17 03:36:53,765 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-17 03:36:53,766 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-17 03:36:53,766 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (1/1) ... [2025-03-17 03:36:53,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-17 03:36:53,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-17 03:36:53,791 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 03:36:53,793 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 03:36:53,808 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-17 03:36:53,808 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-17 03:36:53,808 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-17 03:36:53,809 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-17 03:36:53,809 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-17 03:36:53,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-17 03:36:53,860 INFO L256 CfgBuilder]: Building ICFG [2025-03-17 03:36:53,861 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-17 03:36:54,156 INFO L? ?]: Removed 6 outVars from TransFormulas that were not future-live. [2025-03-17 03:36:54,157 INFO L307 CfgBuilder]: Performing block encoding [2025-03-17 03:36:54,164 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-17 03:36:54,164 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-17 03:36:54,165 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 03:36:54 BoogieIcfgContainer [2025-03-17 03:36:54,165 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-17 03:36:54,167 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-17 03:36:54,167 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-17 03:36:54,171 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-17 03:36:54,171 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 17.03 03:36:53" (1/3) ... [2025-03-17 03:36:54,171 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@99f0b71 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 03:36:54, skipping insertion in model container [2025-03-17 03:36:54,171 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.03 03:36:53" (2/3) ... [2025-03-17 03:36:54,172 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@99f0b71 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 17.03 03:36:54, skipping insertion in model container [2025-03-17 03:36:54,172 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.03 03:36:54" (3/3) ... [2025-03-17 03:36:54,173 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-24.i [2025-03-17 03:36:54,183 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-17 03:36:54,184 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-24.i that has 2 procedures, 42 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-17 03:36:54,220 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-17 03:36:54,232 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;@c375fc9, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-17 03:36:54,232 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-17 03:36:54,235 INFO L276 IsEmpty]: Start isEmpty. Operand has 42 states, 24 states have (on average 1.375) internal successors, (33), 25 states have internal predecessors, (33), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-03-17 03:36:54,240 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2025-03-17 03:36:54,241 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 03:36:54,241 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 03:36:54,241 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 03:36:54,245 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 03:36:54,245 INFO L85 PathProgramCache]: Analyzing trace with hash 858255607, now seen corresponding path program 1 times [2025-03-17 03:36:54,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-17 03:36:54,252 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1513797520] [2025-03-17 03:36:54,252 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 03:36:54,252 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 03:36:54,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-17 03:36:54,255 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 03:36:54,256 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 03:36:54,310 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:54,432 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:54,432 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:54,432 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 03:36:54,439 INFO L256 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-17 03:36:54,444 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-17 03:36:54,467 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2025-03-17 03:36:54,467 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-17 03:36:54,468 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-17 03:36:54,468 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1513797520] [2025-03-17 03:36:54,468 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1513797520] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-17 03:36:54,468 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-17 03:36:54,468 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-17 03:36:54,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018428865] [2025-03-17 03:36:54,470 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-17 03:36:54,476 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-17 03:36:54,476 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-17 03:36:54,489 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-17 03:36:54,489 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-17 03:36:54,491 INFO L87 Difference]: Start difference. First operand has 42 states, 24 states have (on average 1.375) internal successors, (33), 25 states have internal predecessors, (33), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) [2025-03-17 03:36:54,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-17 03:36:54,504 INFO L93 Difference]: Finished difference Result 81 states and 139 transitions. [2025-03-17 03:36:54,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-17 03:36:54,506 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) Word has length 92 [2025-03-17 03:36:54,506 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-17 03:36:54,509 INFO L225 Difference]: With dead ends: 81 [2025-03-17 03:36:54,509 INFO L226 Difference]: Without dead ends: 40 [2025-03-17 03:36:54,511 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 91 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 03:36:54,513 INFO L435 NwaCegarLoop]: 59 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, 59 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 03:36:54,514 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-17 03:36:54,522 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2025-03-17 03:36:54,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2025-03-17 03:36:54,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-03-17 03:36:54,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 59 transitions. [2025-03-17 03:36:54,540 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 59 transitions. Word has length 92 [2025-03-17 03:36:54,540 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-17 03:36:54,540 INFO L471 AbstractCegarLoop]: Abstraction has 40 states and 59 transitions. [2025-03-17 03:36:54,540 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 11.0) internal successors, (22), 2 states have internal predecessors, (22), 2 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 2 states have call successors, (15) [2025-03-17 03:36:54,540 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 59 transitions. [2025-03-17 03:36:54,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2025-03-17 03:36:54,542 INFO L210 NwaCegarLoop]: Found error trace [2025-03-17 03:36:54,544 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 03:36:54,550 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 03:36:54,744 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 03:36:54,745 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-17 03:36:54,746 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-17 03:36:54,746 INFO L85 PathProgramCache]: Analyzing trace with hash -1533806952, now seen corresponding path program 1 times [2025-03-17 03:36:54,757 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-17 03:36:54,758 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1321631761] [2025-03-17 03:36:54,758 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-17 03:36:54,758 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 03:36:54,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-17 03:36:54,762 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 03:36:54,763 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 03:36:54,806 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-03-17 03:36:54,921 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-03-17 03:36:54,921 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-17 03:36:54,921 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-17 03:36:54,926 INFO L256 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-03-17 03:36:54,933 INFO L279 TraceCheckSpWp]: Computing forward predicates...