./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 c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 01:20:41,824 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 01:20:41,875 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-02-06 01:20:41,882 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 01:20:41,883 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 01:20:41,901 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 01:20:41,902 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 01:20:41,902 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 01:20:41,903 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 01:20:41,903 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 01:20:41,903 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 01:20:41,903 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 01:20:41,904 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 01:20:41,904 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 01:20:41,904 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 01:20:41,904 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 01:20:41,905 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 01:20:41,906 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:20:41,906 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 01:20:41,906 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 01:20:41,907 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e [2025-02-06 01:20:42,152 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 01:20:42,159 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 01:20:42,162 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 01:20:42,163 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 01:20:42,163 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 01:20:42,164 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:43,334 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/27fd61154/64c0001f6d9842269148fdf5dd2f34d3/FLAG337a4565a [2025-02-06 01:20:43,547 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 01:20:43,548 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:43,556 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/27fd61154/64c0001f6d9842269148fdf5dd2f34d3/FLAG337a4565a [2025-02-06 01:20:43,895 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/27fd61154/64c0001f6d9842269148fdf5dd2f34d3 [2025-02-06 01:20:43,897 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 01:20:43,898 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 01:20:43,899 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 01:20:43,899 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 01:20:43,902 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 01:20:43,902 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:20:43" (1/1) ... [2025-02-06 01:20:43,903 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@46759bea and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:43, skipping insertion in model container [2025-02-06 01:20:43,903 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:20:43" (1/1) ... [2025-02-06 01:20:43,914 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 01:20:43,991 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-02-06 01:20:44,013 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:20:44,024 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 01:20:44,031 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-02-06 01:20:44,045 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:20:44,063 INFO L204 MainTranslator]: Completed translation [2025-02-06 01:20:44,064 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44 WrapperNode [2025-02-06 01:20:44,064 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 01:20:44,064 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 01:20:44,065 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 01:20:44,065 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 01:20:44,069 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,074 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,097 INFO L138 Inliner]: procedures = 26, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 99 [2025-02-06 01:20:44,099 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 01:20:44,100 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 01:20:44,100 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 01:20:44,100 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 01:20:44,107 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,108 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,110 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,123 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-02-06 01:20:44,124 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,124 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,127 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,128 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,129 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,130 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,131 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 01:20:44,132 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 01:20:44,132 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 01:20:44,132 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 01:20:44,132 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (1/1) ... [2025-02-06 01:20:44,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:20:44,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:20:44,159 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 01:20:44,165 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 01:20:44,176 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 01:20:44,176 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 01:20:44,176 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 01:20:44,176 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-06 01:20:44,176 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 01:20:44,176 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 01:20:44,222 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 01:20:44,224 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 01:20:44,393 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-02-06 01:20:44,393 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 01:20:44,400 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 01:20:44,401 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 01:20:44,401 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:20:44 BoogieIcfgContainer [2025-02-06 01:20:44,402 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 01:20:44,403 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 01:20:44,403 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 01:20:44,406 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 01:20:44,406 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 01:20:43" (1/3) ... [2025-02-06 01:20:44,406 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e9d8d0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:20:44, skipping insertion in model container [2025-02-06 01:20:44,407 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:44" (2/3) ... [2025-02-06 01:20:44,407 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e9d8d0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:20:44, skipping insertion in model container [2025-02-06 01:20:44,407 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:20:44" (3/3) ... [2025-02-06 01:20:44,408 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:44,416 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 01:20:44,418 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-24.i that has 2 procedures, 47 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-06 01:20:44,460 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 01:20:44,470 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;@1e777448, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 01:20:44,470 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 01:20:44,474 INFO L276 IsEmpty]: Start isEmpty. Operand has 47 states, 29 states have (on average 1.3103448275862069) internal successors, (38), 30 states have internal predecessors, (38), 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-02-06 01:20:44,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2025-02-06 01:20:44,482 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:20:44,482 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, 1, 1, 1, 1] [2025-02-06 01:20:44,483 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:20:44,486 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:20:44,486 INFO L85 PathProgramCache]: Analyzing trace with hash 1362119870, now seen corresponding path program 1 times [2025-02-06 01:20:44,491 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 01:20:44,491 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [269671019] [2025-02-06 01:20:44,491 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:20:44,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 01:20:44,564 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:44,574 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:44,574 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:44,574 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:20:44,693 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 0 proven. 28 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2025-02-06 01:20:44,693 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 01:20:44,694 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [269671019] [2025-02-06 01:20:44,694 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [269671019] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 01:20:44,694 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2078257565] [2025-02-06 01:20:44,694 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:20:44,694 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 01:20:44,694 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:20:44,698 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 01:20:44,699 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-02-06 01:20:44,760 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:44,803 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:44,803 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:44,803 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:20:44,805 INFO L256 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 01:20:44,812 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:20:44,833 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2025-02-06 01:20:44,834 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 01:20:44,834 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2078257565] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 01:20:44,834 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-06 01:20:44,834 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-02-06 01:20:44,835 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [328502169] [2025-02-06 01:20:44,836 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 01:20:44,839 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 01:20:44,839 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 01:20:44,851 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 01:20:44,852 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 01:20:44,853 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.3103448275862069) internal successors, (38), 30 states have internal predecessors, (38), 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 13.0) internal successors, (26), 2 states have internal predecessors, (26), 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-02-06 01:20:44,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:20:44,866 INFO L93 Difference]: Finished difference Result 88 states and 146 transitions. [2025-02-06 01:20:44,866 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 01:20:44,867 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 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 96 [2025-02-06 01:20:44,867 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:20:44,871 INFO L225 Difference]: With dead ends: 88 [2025-02-06 01:20:44,871 INFO L226 Difference]: Without dead ends: 44 [2025-02-06 01:20:44,873 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 97 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-02-06 01:20:44,875 INFO L435 NwaCegarLoop]: 63 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, 63 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-02-06 01:20:44,875 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-06 01:20:44,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2025-02-06 01:20:44,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2025-02-06 01:20:44,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 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-02-06 01:20:44,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 63 transitions. [2025-02-06 01:20:44,903 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 63 transitions. Word has length 96 [2025-02-06 01:20:44,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:20:44,903 INFO L471 AbstractCegarLoop]: Abstraction has 44 states and 63 transitions. [2025-02-06 01:20:44,903 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 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-02-06 01:20:44,903 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 63 transitions. [2025-02-06 01:20:44,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2025-02-06 01:20:44,905 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:20:44,905 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, 1, 1, 1, 1] [2025-02-06 01:20:44,911 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-02-06 01:20:45,106 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-02-06 01:20:45,107 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:20:45,107 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:20:45,107 INFO L85 PathProgramCache]: Analyzing trace with hash 222624573, now seen corresponding path program 1 times [2025-02-06 01:20:45,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 01:20:45,107 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1190514049] [2025-02-06 01:20:45,108 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:20:45,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 01:20:45,135 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:45,223 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:45,223 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:45,223 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 01:20:45,223 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 01:20:45,230 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:45,285 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:45,285 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:45,285 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 01:20:45,315 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 01:20:45,315 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-06 01:20:45,316 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-06 01:20:45,317 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-06 01:20:45,319 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-02-06 01:20:45,364 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-06 01:20:45,366 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 06.02 01:20:45 BoogieIcfgContainer [2025-02-06 01:20:45,366 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-06 01:20:45,366 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-06 01:20:45,366 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-06 01:20:45,367 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-06 01:20:45,367 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:20:44" (3/4) ... [2025-02-06 01:20:45,369 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-06 01:20:45,369 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-06 01:20:45,370 INFO L158 Benchmark]: Toolchain (without parser) took 1471.93ms. Allocated memory is still 142.6MB. Free memory was 114.4MB in the beginning and 91.0MB in the end (delta: 23.4MB). Peak memory consumption was 22.0MB. Max. memory is 16.1GB. [2025-02-06 01:20:45,371 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 201.3MB. Free memory is still 124.1MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:20:45,372 INFO L158 Benchmark]: CACSL2BoogieTranslator took 165.25ms. Allocated memory is still 142.6MB. Free memory was 113.9MB in the beginning and 101.3MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-06 01:20:45,374 INFO L158 Benchmark]: Boogie Procedure Inliner took 35.06ms. Allocated memory is still 142.6MB. Free memory was 101.3MB in the beginning and 99.0MB in the end (delta: 2.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-06 01:20:45,374 INFO L158 Benchmark]: Boogie Preprocessor took 31.04ms. Allocated memory is still 142.6MB. Free memory was 99.0MB in the beginning and 95.6MB in the end (delta: 3.4MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:20:45,375 INFO L158 Benchmark]: IcfgBuilder took 270.11ms. Allocated memory is still 142.6MB. Free memory was 95.6MB in the beginning and 79.5MB in the end (delta: 16.1MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-06 01:20:45,375 INFO L158 Benchmark]: TraceAbstraction took 962.75ms. Allocated memory is still 142.6MB. Free memory was 78.6MB in the beginning and 91.8MB in the end (delta: -13.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:20:45,375 INFO L158 Benchmark]: Witness Printer took 3.10ms. Allocated memory is still 142.6MB. Free memory was 91.8MB in the beginning and 91.0MB in the end (delta: 773.0kB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:20:45,377 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.20ms. Allocated memory is still 201.3MB. Free memory is still 124.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 165.25ms. Allocated memory is still 142.6MB. Free memory was 113.9MB in the beginning and 101.3MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 35.06ms. Allocated memory is still 142.6MB. Free memory was 101.3MB in the beginning and 99.0MB in the end (delta: 2.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 31.04ms. Allocated memory is still 142.6MB. Free memory was 99.0MB in the beginning and 95.6MB in the end (delta: 3.4MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 270.11ms. Allocated memory is still 142.6MB. Free memory was 95.6MB in the beginning and 79.5MB in the end (delta: 16.1MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 962.75ms. Allocated memory is still 142.6MB. Free memory was 78.6MB in the beginning and 91.8MB in the end (delta: -13.2MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 3.10ms. Allocated memory is still 142.6MB. Free memory was 91.8MB in the beginning and 91.0MB in the end (delta: 773.0kB). 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 37, overapproximation of someBinaryFLOATComparisonOperation at line 83, overapproximation of someBinaryFLOATComparisonOperation at line 46, overapproximation of someBinaryFLOATComparisonOperation at line 72, overapproximation of someBinaryFLOATComparisonOperation at line 88, overapproximation of someBinaryFLOATComparisonOperation at line 64. 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; VAL [isInitial=0, 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] [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=126, 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=126, 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=126, 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=126, 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=126, 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=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, 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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=8, var_1_8=127, var_1_9=127] [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=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=128, var_1_8=127, var_1_9=127] [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=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=128, var_1_8=127, var_1_9=127] [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) ; VAL [\result=0, isInitial=1, var_1_10=127, var_1_11=32, var_1_1=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=128, var_1_8=127, var_1_9=127] [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=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=128, var_1_8=127, var_1_9=127] [L19] reach_error() VAL [isInitial=1, var_1_10=127, var_1_11=32, var_1_1=126, var_1_2=0, var_1_4=126, var_1_5=126, var_1_6=128, var_1_8=127, var_1_9=127] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 47 locations, 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, 63 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, 63 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 97 GetRequests, 97 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=47occurred 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.1s InterpolantComputationTime, 288 NumberOfCodeBlocks, 288 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 190 ConstructedInterpolants, 0 QuantifiedInterpolants, 190 SizeOfPredicates, 0 NumberOfNonLiveVariables, 220 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-02-06 01:20:45,392 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 01:20:47,171 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 01:20:47,253 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-02-06 01:20:47,260 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 01:20:47,260 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 01:20:47,280 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 01:20:47,281 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 01:20:47,281 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 01:20:47,282 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 01:20:47,282 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 01:20:47,283 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 01:20:47,283 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 01:20:47,283 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 01:20:47,283 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 01:20:47,284 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 01:20:47,284 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 01:20:47,285 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 01:20:47,285 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:20:47,286 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 01:20:47,286 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 01:20:47,287 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 481fb6163129bcac31bfa5548f3c66416510365b56cd1a0ddcb41986b1359b6e [2025-02-06 01:20:47,530 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 01:20:47,535 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 01:20:47,537 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 01:20:47,540 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 01:20:47,541 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 01:20:47,542 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:48,683 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/254174249/0ec4e44ac3f44f9e8123d93cc265a778/FLAG7a32b8305 [2025-02-06 01:20:48,886 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 01:20:48,887 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:48,893 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/254174249/0ec4e44ac3f44f9e8123d93cc265a778/FLAG7a32b8305 [2025-02-06 01:20:49,248 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/254174249/0ec4e44ac3f44f9e8123d93cc265a778 [2025-02-06 01:20:49,249 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 01:20:49,250 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 01:20:49,251 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 01:20:49,251 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 01:20:49,254 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 01:20:49,254 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,255 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@611d0cb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49, skipping insertion in model container [2025-02-06 01:20:49,255 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,267 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 01:20:49,354 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-02-06 01:20:49,377 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:20:49,389 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 01:20:49,396 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-24.i[915,928] [2025-02-06 01:20:49,412 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:20:49,425 INFO L204 MainTranslator]: Completed translation [2025-02-06 01:20:49,426 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49 WrapperNode [2025-02-06 01:20:49,426 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 01:20:49,427 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 01:20:49,427 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 01:20:49,427 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 01:20:49,431 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,439 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,459 INFO L138 Inliner]: procedures = 27, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 97 [2025-02-06 01:20:49,460 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 01:20:49,461 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 01:20:49,461 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 01:20:49,461 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 01:20:49,466 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,467 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,469 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,483 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-02-06 01:20:49,484 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,484 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,494 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,495 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,496 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,497 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,502 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 01:20:49,503 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 01:20:49,503 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 01:20:49,503 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 01:20:49,503 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (1/1) ... [2025-02-06 01:20:49,510 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:20:49,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:20:49,529 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 01:20:49,532 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 01:20:49,546 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 01:20:49,546 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-06 01:20:49,546 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 01:20:49,546 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 01:20:49,546 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 01:20:49,546 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 01:20:49,592 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 01:20:49,593 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 01:20:49,864 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-02-06 01:20:49,864 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 01:20:49,870 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 01:20:49,870 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 01:20:49,870 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:20:49 BoogieIcfgContainer [2025-02-06 01:20:49,870 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 01:20:49,872 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 01:20:49,872 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 01:20:49,875 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 01:20:49,875 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 01:20:49" (1/3) ... [2025-02-06 01:20:49,876 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@78078b79 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:20:49, skipping insertion in model container [2025-02-06 01:20:49,876 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:20:49" (2/3) ... [2025-02-06 01:20:49,876 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@78078b79 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:20:49, skipping insertion in model container [2025-02-06 01:20:49,876 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:20:49" (3/3) ... [2025-02-06 01:20:49,877 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-24.i [2025-02-06 01:20:49,886 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 01:20:49,887 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-24.i that has 2 procedures, 47 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-06 01:20:49,918 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 01:20:49,925 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;@170a8370, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 01:20:49,926 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 01:20:49,928 INFO L276 IsEmpty]: Start isEmpty. Operand has 47 states, 29 states have (on average 1.3103448275862069) internal successors, (38), 30 states have internal predecessors, (38), 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-02-06 01:20:49,934 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2025-02-06 01:20:49,934 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:20:49,934 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, 1, 1, 1, 1] [2025-02-06 01:20:49,935 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:20:49,938 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:20:49,938 INFO L85 PathProgramCache]: Analyzing trace with hash 1362119870, now seen corresponding path program 1 times [2025-02-06 01:20:49,944 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 01:20:49,944 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [182917890] [2025-02-06 01:20:49,944 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:20:49,945 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-02-06 01:20:49,945 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 01:20:49,948 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/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-02-06 01:20:49,949 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-06 01:20:50,009 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:50,130 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:50,130 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:50,130 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:20:50,136 INFO L256 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 01:20:50,141 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:20:50,168 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 80 proven. 0 refuted. 0 times theorem prover too weak. 340 trivial. 0 not checked. [2025-02-06 01:20:50,168 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 01:20:50,168 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-06 01:20:50,168 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [182917890] [2025-02-06 01:20:50,169 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [182917890] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 01:20:50,169 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 01:20:50,169 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-06 01:20:50,170 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1389828423] [2025-02-06 01:20:50,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 01:20:50,173 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 01:20:50,173 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-06 01:20:50,186 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 01:20:50,187 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 01:20:50,188 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.3103448275862069) internal successors, (38), 30 states have internal predecessors, (38), 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 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-02-06 01:20:50,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:20:50,202 INFO L93 Difference]: Finished difference Result 88 states and 146 transitions. [2025-02-06 01:20:50,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 01:20:50,203 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) Word has length 96 [2025-02-06 01:20:50,203 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:20:50,207 INFO L225 Difference]: With dead ends: 88 [2025-02-06 01:20:50,207 INFO L226 Difference]: Without dead ends: 44 [2025-02-06 01:20:50,209 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 95 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-02-06 01:20:50,210 INFO L435 NwaCegarLoop]: 63 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, 63 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-02-06 01:20:50,211 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-06 01:20:50,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2025-02-06 01:20:50,230 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2025-02-06 01:20:50,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 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-02-06 01:20:50,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 63 transitions. [2025-02-06 01:20:50,250 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 63 transitions. Word has length 96 [2025-02-06 01:20:50,250 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:20:50,250 INFO L471 AbstractCegarLoop]: Abstraction has 44 states and 63 transitions. [2025-02-06 01:20:50,250 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-02-06 01:20:50,250 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 63 transitions. [2025-02-06 01:20:50,253 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2025-02-06 01:20:50,253 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:20:50,253 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, 1, 1, 1, 1] [2025-02-06 01:20:50,260 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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)] Forceful destruction successful, exit code 0 [2025-02-06 01:20:50,453 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/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-02-06 01:20:50,454 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:20:50,454 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:20:50,454 INFO L85 PathProgramCache]: Analyzing trace with hash 222624573, now seen corresponding path program 1 times [2025-02-06 01:20:50,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 01:20:50,455 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1749322582] [2025-02-06 01:20:50,455 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:20:50,455 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-02-06 01:20:50,455 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 01:20:50,457 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/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-02-06 01:20:50,458 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-06 01:20:50,495 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 96 statements into 1 equivalence classes. [2025-02-06 01:20:50,613 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 96 of 96 statements. [2025-02-06 01:20:50,613 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:20:50,613 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:20:50,620 INFO L256 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-02-06 01:20:50,625 INFO L279 TraceCheckSpWp]: Computing forward predicates...