./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-50.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-50.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 c4b05c21721c854aa1d85f5e76ec4c053635469e75cc7eddff9c883fb48a33f5 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 01:24:22,683 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 01:24:22,724 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:24:22,728 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 01:24:22,728 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 01:24:22,754 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 01:24:22,755 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 01:24:22,756 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 01:24:22,756 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 01:24:22,756 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 01:24:22,756 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 01:24:22,757 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 01:24:22,757 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 01:24:22,757 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 01:24:22,758 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 01:24:22,758 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 01:24:22,759 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 01:24:22,759 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:24:22,760 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 01:24:22,760 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 01:24:22,761 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 01:24:22,761 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 01:24:22,761 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 -> c4b05c21721c854aa1d85f5e76ec4c053635469e75cc7eddff9c883fb48a33f5 [2025-02-06 01:24:23,003 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 01:24:23,010 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 01:24:23,016 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 01:24:23,017 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 01:24:23,017 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 01:24:23,018 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-50.i [2025-02-06 01:24:24,203 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5917335dd/a38b4d2c2a9844a78488ad635159a547/FLAG2b00329fe [2025-02-06 01:24:24,454 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 01:24:24,455 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-50.i [2025-02-06 01:24:24,464 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5917335dd/a38b4d2c2a9844a78488ad635159a547/FLAG2b00329fe [2025-02-06 01:24:24,779 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5917335dd/a38b4d2c2a9844a78488ad635159a547 [2025-02-06 01:24:24,780 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 01:24:24,781 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 01:24:24,783 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 01:24:24,783 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 01:24:24,786 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 01:24:24,786 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:24:24" (1/1) ... [2025-02-06 01:24:24,787 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@44c81a46 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:24, skipping insertion in model container [2025-02-06 01:24:24,787 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:24:24" (1/1) ... [2025-02-06 01:24:24,798 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 01:24:24,919 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-50.i[915,928] [2025-02-06 01:24:24,949 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:24:24,957 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 01:24:24,964 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-50.i[915,928] [2025-02-06 01:24:24,984 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:24:25,002 INFO L204 MainTranslator]: Completed translation [2025-02-06 01:24:25,003 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25 WrapperNode [2025-02-06 01:24:25,003 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 01:24:25,004 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 01:24:25,004 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 01:24:25,004 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 01:24:25,008 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:24:25" (1/1) ... [2025-02-06 01:24:25,018 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:24:25" (1/1) ... [2025-02-06 01:24:25,035 INFO L138 Inliner]: procedures = 26, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 113 [2025-02-06 01:24:25,039 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 01:24:25,039 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 01:24:25,039 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 01:24:25,039 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 01:24:25,045 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,046 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,047 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,062 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:24:25,062 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,062 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,068 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,069 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,070 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,074 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,075 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 01:24:25,076 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 01:24:25,076 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 01:24:25,076 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 01:24:25,077 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (1/1) ... [2025-02-06 01:24:25,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:24:25,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:24:25,103 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:24:25,105 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:24:25,121 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 01:24:25,121 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 01:24:25,121 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 01:24:25,121 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-06 01:24:25,121 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 01:24:25,121 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 01:24:25,174 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 01:24:25,177 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 01:24:25,339 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-02-06 01:24:25,339 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 01:24:25,346 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 01:24:25,347 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 01:24:25,347 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:24:25 BoogieIcfgContainer [2025-02-06 01:24:25,347 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 01:24:25,349 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 01:24:25,349 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 01:24:25,352 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 01:24:25,352 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 01:24:24" (1/3) ... [2025-02-06 01:24:25,352 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7413130a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:24:25, skipping insertion in model container [2025-02-06 01:24:25,352 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:25" (2/3) ... [2025-02-06 01:24:25,353 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7413130a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:24:25, skipping insertion in model container [2025-02-06 01:24:25,353 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:24:25" (3/3) ... [2025-02-06 01:24:25,353 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-50.i [2025-02-06 01:24:25,369 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 01:24:25,374 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-50.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-06 01:24:25,432 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 01:24:25,444 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;@7b507707, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 01:24:25,444 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 01:24:25,448 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:25,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:25,456 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:25,456 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:25,456 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:25,460 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:25,460 INFO L85 PathProgramCache]: Analyzing trace with hash 1355708907, now seen corresponding path program 1 times [2025-02-06 01:24:25,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 01:24:25,466 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [130791774] [2025-02-06 01:24:25,466 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:25,466 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 01:24:25,538 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:25,551 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:25,551 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:25,551 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:25,659 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-02-06 01:24:25,660 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 01:24:25,660 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [130791774] [2025-02-06 01:24:25,661 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [130791774] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 01:24:25,661 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1247109809] [2025-02-06 01:24:25,661 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:25,661 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 01:24:25,661 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:24:25,664 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:24:25,665 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:24:25,714 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:25,749 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:25,749 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:25,749 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:25,751 INFO L256 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 01:24:25,755 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:24:25,773 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-02-06 01:24:25,773 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 01:24:25,773 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1247109809] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 01:24:25,773 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-06 01:24:25,773 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-02-06 01:24:25,775 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2064147385] [2025-02-06 01:24:25,775 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 01:24:25,778 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 01:24:25,778 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 01:24:25,797 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 01:24:25,797 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 01:24:25,799 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-02-06 01:24:25,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:24:25,813 INFO L93 Difference]: Finished difference Result 98 states and 161 transitions. [2025-02-06 01:24:25,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 01:24:25,814 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) Word has length 105 [2025-02-06 01:24:25,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:24:25,821 INFO L225 Difference]: With dead ends: 98 [2025-02-06 01:24:25,821 INFO L226 Difference]: Without dead ends: 49 [2025-02-06 01:24:25,823 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 106 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:24:25,825 INFO L435 NwaCegarLoop]: 70 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, 70 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:24:25,825 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-06 01:24:25,834 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-02-06 01:24:25,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-02-06 01:24:25,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:25,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 70 transitions. [2025-02-06 01:24:25,849 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 70 transitions. Word has length 105 [2025-02-06 01:24:25,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:24:25,850 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 70 transitions. [2025-02-06 01:24:25,850 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-02-06 01:24:25,850 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 70 transitions. [2025-02-06 01:24:25,851 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:25,851 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:25,852 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:25,858 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:24:26,052 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:24:26,053 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:26,053 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:26,053 INFO L85 PathProgramCache]: Analyzing trace with hash -1617991193, now seen corresponding path program 1 times [2025-02-06 01:24:26,054 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 01:24:26,054 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1870045385] [2025-02-06 01:24:26,054 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:26,054 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 01:24:26,083 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:26,156 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:26,158 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:26,158 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:26,731 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-02-06 01:24:26,732 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 01:24:26,732 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1870045385] [2025-02-06 01:24:26,732 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1870045385] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 01:24:26,733 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [22141461] [2025-02-06 01:24:26,733 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:26,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 01:24:26,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:24:26,736 INFO L229 MonitoredProcess]: Starting monitored process 3 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:24:26,739 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-02-06 01:24:26,787 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:26,840 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:26,840 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:26,840 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:26,843 INFO L256 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-02-06 01:24:26,846 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:24:26,975 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 253 proven. 24 refuted. 0 times theorem prover too weak. 203 trivial. 0 not checked. [2025-02-06 01:24:26,976 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 01:24:27,143 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-02-06 01:24:27,143 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [22141461] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 01:24:27,143 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 01:24:27,143 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 9 [2025-02-06 01:24:27,143 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [515621622] [2025-02-06 01:24:27,143 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 01:24:27,144 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2025-02-06 01:24:27,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 01:24:27,145 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-02-06 01:24:27,145 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=47, Unknown=0, NotChecked=0, Total=72 [2025-02-06 01:24:27,145 INFO L87 Difference]: Start difference. First operand 49 states and 70 transitions. Second operand has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-02-06 01:24:27,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:24:27,435 INFO L93 Difference]: Finished difference Result 157 states and 218 transitions. [2025-02-06 01:24:27,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2025-02-06 01:24:27,435 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) Word has length 105 [2025-02-06 01:24:27,435 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:24:27,437 INFO L225 Difference]: With dead ends: 157 [2025-02-06 01:24:27,437 INFO L226 Difference]: Without dead ends: 111 [2025-02-06 01:24:27,438 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 225 GetRequests, 206 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=112, Invalid=230, Unknown=0, NotChecked=0, Total=342 [2025-02-06 01:24:27,438 INFO L435 NwaCegarLoop]: 81 mSDtfsCounter, 126 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 221 SdHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2025-02-06 01:24:27,438 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [148 Valid, 221 Invalid, 260 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 225 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2025-02-06 01:24:27,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2025-02-06 01:24:27,448 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 56. [2025-02-06 01:24:27,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 37 states have internal predecessors, (45), 16 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:27,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 77 transitions. [2025-02-06 01:24:27,449 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 77 transitions. Word has length 105 [2025-02-06 01:24:27,449 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:24:27,450 INFO L471 AbstractCegarLoop]: Abstraction has 56 states and 77 transitions. [2025-02-06 01:24:27,450 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-02-06 01:24:27,450 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 77 transitions. [2025-02-06 01:24:27,451 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:27,451 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:27,451 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:27,457 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2025-02-06 01:24:27,655 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,3 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 01:24:27,655 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:27,656 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:27,656 INFO L85 PathProgramCache]: Analyzing trace with hash -730487512, now seen corresponding path program 1 times [2025-02-06 01:24:27,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 01:24:27,656 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [75803305] [2025-02-06 01:24:27,656 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:27,656 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 01:24:27,664 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:27,686 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:27,687 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:27,687 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 01:24:27,687 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 01:24:27,690 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:27,719 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:27,720 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:27,720 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 01:24:27,740 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 01:24:27,741 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-06 01:24:27,741 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-06 01:24:27,743 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-02-06 01:24:27,744 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-02-06 01:24:27,784 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-06 01:24:27,786 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 06.02 01:24:27 BoogieIcfgContainer [2025-02-06 01:24:27,786 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-06 01:24:27,787 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-06 01:24:27,787 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-06 01:24:27,787 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-06 01:24:27,788 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:24:25" (3/4) ... [2025-02-06 01:24:27,789 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-06 01:24:27,790 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-06 01:24:27,790 INFO L158 Benchmark]: Toolchain (without parser) took 3008.64ms. Allocated memory is still 142.6MB. Free memory was 106.4MB in the beginning and 61.3MB in the end (delta: 45.0MB). Peak memory consumption was 40.4MB. Max. memory is 16.1GB. [2025-02-06 01:24:27,790 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 201.3MB. Free memory is still 116.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:24:27,790 INFO L158 Benchmark]: CACSL2BoogieTranslator took 220.82ms. Allocated memory is still 142.6MB. Free memory was 106.4MB in the beginning and 94.3MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-06 01:24:27,791 INFO L158 Benchmark]: Boogie Procedure Inliner took 34.75ms. Allocated memory is still 142.6MB. Free memory was 93.4MB in the beginning and 92.3MB in the end (delta: 1.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-06 01:24:27,791 INFO L158 Benchmark]: Boogie Preprocessor took 35.93ms. Allocated memory is still 142.6MB. Free memory was 92.3MB in the beginning and 90.4MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:24:27,791 INFO L158 Benchmark]: IcfgBuilder took 271.40ms. Allocated memory is still 142.6MB. Free memory was 90.4MB in the beginning and 74.6MB in the end (delta: 15.9MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-06 01:24:27,791 INFO L158 Benchmark]: TraceAbstraction took 2437.93ms. Allocated memory is still 142.6MB. Free memory was 73.7MB in the beginning and 62.5MB in the end (delta: 11.1MB). Peak memory consumption was 6.8MB. Max. memory is 16.1GB. [2025-02-06 01:24:27,791 INFO L158 Benchmark]: Witness Printer took 2.59ms. Allocated memory is still 142.6MB. Free memory was 61.4MB in the beginning and 61.3MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 01:24:27,792 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.14ms. Allocated memory is still 201.3MB. Free memory is still 116.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 220.82ms. Allocated memory is still 142.6MB. Free memory was 106.4MB in the beginning and 94.3MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 34.75ms. Allocated memory is still 142.6MB. Free memory was 93.4MB in the beginning and 92.3MB in the end (delta: 1.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 35.93ms. Allocated memory is still 142.6MB. Free memory was 92.3MB in the beginning and 90.4MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 271.40ms. Allocated memory is still 142.6MB. Free memory was 90.4MB in the beginning and 74.6MB in the end (delta: 15.9MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 2437.93ms. Allocated memory is still 142.6MB. Free memory was 73.7MB in the beginning and 62.5MB in the end (delta: 11.1MB). Peak memory consumption was 6.8MB. Max. memory is 16.1GB. * Witness Printer took 2.59ms. Allocated memory is still 142.6MB. Free memory was 61.4MB in the beginning and 61.3MB 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 someBinaryDOUBLEComparisonOperation at line 72, overapproximation of someBinaryDOUBLEComparisonOperation at line 100, overapproximation of someBinaryDOUBLEComparisonOperation at line 49, overapproximation of someBinaryDOUBLEComparisonOperation at line 70, overapproximation of someBinaryDOUBLEComparisonOperation at line 74, overapproximation of someBinaryDOUBLEComparisonOperation at line 76, overapproximation of someBinaryDOUBLEComparisonOperation at line 40. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 1; [L23] double var_1_2 = 8.875; [L24] double var_1_3 = 63.5; [L25] double var_1_4 = 16.6; [L26] double var_1_5 = 127.8; [L27] unsigned char var_1_6 = 0; [L28] unsigned char var_1_7 = 0; [L29] unsigned char var_1_8 = 1; [L30] signed short int var_1_9 = 256; [L31] signed short int var_1_10 = 10000; [L32] signed short int var_1_11 = 4; [L33] signed short int var_1_12 = -32; [L34] signed long int var_1_13 = 32; [L35] signed short int var_1_14 = 32; [L36] signed long int last_1_var_1_13 = 32; VAL [isInitial=0, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_2=71/8, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L104] isInitial = 1 [L105] FCALL initially() [L106] COND TRUE 1 [L107] CALL updateLastVariables() [L97] last_1_var_1_13 = var_1_13 VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_2=71/8, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L107] RET updateLastVariables() [L108] CALL updateVariables() [L69] var_1_2 = __VERIFIER_nondet_double() [L70] CALL assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L70] RET assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L71] var_1_3 = __VERIFIER_nondet_double() [L72] 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, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L72] 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, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L73] var_1_4 = __VERIFIER_nondet_double() [L74] CALL assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L74] RET assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L75] var_1_5 = __VERIFIER_nondet_double() [L76] CALL assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L76] RET assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L77] var_1_6 = __VERIFIER_nondet_uchar() [L78] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L78] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L79] CALL assume_abort_if_not(var_1_6 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L79] RET assume_abort_if_not(var_1_6 <= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L80] var_1_7 = __VERIFIER_nondet_uchar() [L81] CALL assume_abort_if_not(var_1_7 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L81] RET assume_abort_if_not(var_1_7 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L82] CALL assume_abort_if_not(var_1_7 <= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=1, var_1_9=256] [L82] RET assume_abort_if_not(var_1_7 <= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=1, var_1_9=256] [L83] var_1_8 = __VERIFIER_nondet_uchar() [L84] CALL assume_abort_if_not(var_1_8 >= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L84] RET assume_abort_if_not(var_1_8 >= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L85] CALL assume_abort_if_not(var_1_8 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L85] RET assume_abort_if_not(var_1_8 <= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L86] var_1_10 = __VERIFIER_nondet_short() [L87] CALL assume_abort_if_not(var_1_10 >= -1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L87] RET assume_abort_if_not(var_1_10 >= -1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L88] CALL assume_abort_if_not(var_1_10 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L88] RET assume_abort_if_not(var_1_10 <= 32766) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L89] var_1_11 = __VERIFIER_nondet_short() [L90] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L90] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L91] CALL assume_abort_if_not(var_1_11 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L91] RET assume_abort_if_not(var_1_11 <= 32766) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L92] var_1_14 = __VERIFIER_nondet_short() [L93] CALL assume_abort_if_not(var_1_14 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L93] RET assume_abort_if_not(var_1_14 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L94] CALL assume_abort_if_not(var_1_14 <= 32767) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L94] RET assume_abort_if_not(var_1_14 <= 32767) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L108] RET updateVariables() [L109] CALL step() [L40] COND FALSE !((((((var_1_2 + var_1_3)) < ((var_1_4 - var_1_5))) ? ((var_1_2 + var_1_3)) : ((var_1_4 - var_1_5)))) != 31.9) [L47] var_1_1 = var_1_7 VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=256] [L49] COND TRUE var_1_2 > var_1_5 [L50] var_1_9 = (var_1_10 - var_1_11) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L52] unsigned char stepLocal_0 = var_1_8; VAL [isInitial=1, last_1_var_1_13=32, stepLocal_0=-255, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L53] COND FALSE !(var_1_1 && stepLocal_0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L56] signed short int stepLocal_2 = var_1_9; [L57] signed long int stepLocal_1 = var_1_11 - var_1_14; VAL [isInitial=1, last_1_var_1_13=32, stepLocal_1=0, stepLocal_2=32766, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L58] COND TRUE var_1_11 <= stepLocal_2 [L59] var_1_13 = (var_1_10 - var_1_11) VAL [isInitial=1, last_1_var_1_13=32, stepLocal_1=0, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L109] RET step() [L110] CALL, EXPR property() [L100-L101] return (((((((((var_1_2 + var_1_3)) < ((var_1_4 - var_1_5))) ? ((var_1_2 + var_1_3)) : ((var_1_4 - var_1_5)))) != 31.9) ? (var_1_6 ? (var_1_1 == ((unsigned char) var_1_7)) : (var_1_1 == ((unsigned char) var_1_8))) : (var_1_1 == ((unsigned char) var_1_7))) && ((var_1_2 > var_1_5) ? (var_1_9 == ((signed short int) (var_1_10 - var_1_11))) : 1)) && ((var_1_1 && var_1_8) ? (var_1_12 == ((signed short int) (var_1_11 - 1))) : 1)) && ((var_1_11 <= var_1_9) ? (var_1_13 == ((signed long int) (var_1_10 - var_1_11))) : ((last_1_var_1_13 > (var_1_11 - var_1_14)) ? (var_1_13 == ((signed long int) last_1_var_1_13)) : (var_1_13 == ((signed long int) last_1_var_1_13)))) ; VAL [\result=0, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L110] RET, EXPR property() [L110] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] [L19] reach_error() VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=-256, var_1_6=0, var_1_7=-256, var_1_8=-255, var_1_9=32766] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 52 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 2.3s, OverallIterations: 3, TraceHistogramMax: 16, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 148 SdHoareTripleChecker+Valid, 0.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 126 mSDsluCounter, 291 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 140 mSDsCounter, 35 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 225 IncrementalHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 35 mSolverCounterUnsat, 151 mSDtfsCounter, 225 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 331 GetRequests, 312 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=56occurred in iteration=2, InterpolantAutomatonStates: 19, 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, 2 MinimizatonAttempts, 55 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 1.0s InterpolantComputationTime, 525 NumberOfCodeBlocks, 525 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 520 ConstructedInterpolants, 0 QuantifiedInterpolants, 922 SizeOfPredicates, 2 NumberOfNonLiveVariables, 496 ConjunctsInSsa, 9 ConjunctsInUnsatCore, 5 InterpolantComputations, 1 PerfectInterpolantSequences, 2298/2400 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:24:27,806 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-50.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 c4b05c21721c854aa1d85f5e76ec4c053635469e75cc7eddff9c883fb48a33f5 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 01:24:29,725 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 01:24:29,810 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:24:29,814 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 01:24:29,815 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 01:24:29,839 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 01:24:29,840 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 01:24:29,840 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 01:24:29,841 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 01:24:29,841 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 01:24:29,841 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 01:24:29,841 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 01:24:29,841 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 01:24:29,841 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 01:24:29,842 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 01:24:29,842 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 01:24:29,843 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 01:24:29,843 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:24:29,844 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 01:24:29,844 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 01:24:29,844 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 -> c4b05c21721c854aa1d85f5e76ec4c053635469e75cc7eddff9c883fb48a33f5 [2025-02-06 01:24:30,074 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 01:24:30,078 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 01:24:30,080 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 01:24:30,080 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 01:24:30,080 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 01:24:30,081 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-50.i [2025-02-06 01:24:31,248 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/76252e83f/28658d460cd4413e9afa2b57f6bb302e/FLAGf62017749 [2025-02-06 01:24:31,479 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 01:24:31,481 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-50.i [2025-02-06 01:24:31,487 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/76252e83f/28658d460cd4413e9afa2b57f6bb302e/FLAGf62017749 [2025-02-06 01:24:31,850 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/76252e83f/28658d460cd4413e9afa2b57f6bb302e [2025-02-06 01:24:31,852 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 01:24:31,853 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 01:24:31,854 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 01:24:31,854 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 01:24:31,860 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 01:24:31,860 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:24:31" (1/1) ... [2025-02-06 01:24:31,861 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@73431a53 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:31, skipping insertion in model container [2025-02-06 01:24:31,861 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:24:31" (1/1) ... [2025-02-06 01:24:31,871 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 01:24:31,965 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-50.i[915,928] [2025-02-06 01:24:31,996 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:24:32,005 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 01:24:32,012 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-50.i[915,928] [2025-02-06 01:24:32,025 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 01:24:32,039 INFO L204 MainTranslator]: Completed translation [2025-02-06 01:24:32,040 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32 WrapperNode [2025-02-06 01:24:32,040 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 01:24:32,041 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 01:24:32,041 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 01:24:32,041 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 01:24:32,045 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:24:32" (1/1) ... [2025-02-06 01:24:32,053 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:24:32" (1/1) ... [2025-02-06 01:24:32,074 INFO L138 Inliner]: procedures = 27, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 110 [2025-02-06 01:24:32,077 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 01:24:32,078 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 01:24:32,078 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 01:24:32,078 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 01:24:32,084 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,084 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,089 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,102 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:24:32,102 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,102 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,110 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,114 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,115 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,116 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,117 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 01:24:32,118 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 01:24:32,118 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 01:24:32,118 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 01:24:32,119 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (1/1) ... [2025-02-06 01:24:32,126 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 01:24:32,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 01:24:32,150 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:24:32,157 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:24:32,175 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 01:24:32,175 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-06 01:24:32,175 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 01:24:32,176 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 01:24:32,176 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 01:24:32,176 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 01:24:32,235 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 01:24:32,237 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 01:24:34,208 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-02-06 01:24:34,208 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 01:24:34,218 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 01:24:34,218 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 01:24:34,218 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:24:34 BoogieIcfgContainer [2025-02-06 01:24:34,219 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 01:24:34,220 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 01:24:34,220 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 01:24:34,226 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 01:24:34,227 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 01:24:31" (1/3) ... [2025-02-06 01:24:34,227 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5933ff5e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:24:34, skipping insertion in model container [2025-02-06 01:24:34,227 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:24:32" (2/3) ... [2025-02-06 01:24:34,227 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5933ff5e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:24:34, skipping insertion in model container [2025-02-06 01:24:34,227 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:24:34" (3/3) ... [2025-02-06 01:24:34,228 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-50.i [2025-02-06 01:24:34,237 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 01:24:34,238 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-50.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-06 01:24:34,278 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 01:24:34,285 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;@18751ef7, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 01:24:34,286 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 01:24:34,288 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:34,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:34,294 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:34,294 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:34,294 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:34,297 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:34,298 INFO L85 PathProgramCache]: Analyzing trace with hash 1355708907, now seen corresponding path program 1 times [2025-02-06 01:24:34,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 01:24:34,304 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [697850737] [2025-02-06 01:24:34,305 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:34,305 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:24:34,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 01:24:34,308 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:24:34,310 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:24:34,363 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:34,544 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:34,545 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:34,545 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:34,557 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 01:24:34,562 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:24:34,591 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 246 proven. 0 refuted. 0 times theorem prover too weak. 234 trivial. 0 not checked. [2025-02-06 01:24:34,591 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 01:24:34,591 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-06 01:24:34,591 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [697850737] [2025-02-06 01:24:34,592 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [697850737] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 01:24:34,592 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 01:24:34,592 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-06 01:24:34,597 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [161709951] [2025-02-06 01:24:34,597 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 01:24:34,599 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 01:24:34,599 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-06 01:24:34,615 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 01:24:34,615 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 01:24:34,617 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-02-06 01:24:34,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:24:34,630 INFO L93 Difference]: Finished difference Result 98 states and 161 transitions. [2025-02-06 01:24:34,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 01:24:34,631 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) Word has length 105 [2025-02-06 01:24:34,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:24:34,646 INFO L225 Difference]: With dead ends: 98 [2025-02-06 01:24:34,646 INFO L226 Difference]: Without dead ends: 49 [2025-02-06 01:24:34,651 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 104 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:24:34,654 INFO L435 NwaCegarLoop]: 70 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, 70 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:24:34,654 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-06 01:24:34,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-02-06 01:24:34,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-02-06 01:24:34,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:34,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 70 transitions. [2025-02-06 01:24:34,693 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 70 transitions. Word has length 105 [2025-02-06 01:24:34,693 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:24:34,697 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 70 transitions. [2025-02-06 01:24:34,698 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-02-06 01:24:34,698 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 70 transitions. [2025-02-06 01:24:34,699 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:34,699 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:34,699 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:34,714 INFO L552 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)] Ended with exit code 0 [2025-02-06 01:24:34,900 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:24:34,900 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:34,901 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:34,901 INFO L85 PathProgramCache]: Analyzing trace with hash -1617991193, now seen corresponding path program 1 times [2025-02-06 01:24:34,902 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 01:24:34,902 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [349423358] [2025-02-06 01:24:34,902 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:34,902 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:24:34,902 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 01:24:34,904 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:24:34,906 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:24:34,945 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:35,081 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:35,082 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:35,082 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:35,088 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-02-06 01:24:35,091 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:24:35,235 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 253 proven. 24 refuted. 0 times theorem prover too weak. 203 trivial. 0 not checked. [2025-02-06 01:24:35,235 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 01:24:35,459 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-02-06 01:24:35,460 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-06 01:24:35,460 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [349423358] [2025-02-06 01:24:35,460 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [349423358] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 01:24:35,460 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-02-06 01:24:35,460 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2025-02-06 01:24:35,460 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [645155700] [2025-02-06 01:24:35,460 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-02-06 01:24:35,461 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-02-06 01:24:35,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-06 01:24:35,462 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-02-06 01:24:35,462 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2025-02-06 01:24:35,462 INFO L87 Difference]: Start difference. First operand 49 states and 70 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-02-06 01:24:38,665 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.06s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-02-06 01:24:38,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 01:24:38,726 INFO L93 Difference]: Finished difference Result 157 states and 218 transitions. [2025-02-06 01:24:38,726 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2025-02-06 01:24:38,727 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) Word has length 105 [2025-02-06 01:24:38,729 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 01:24:38,730 INFO L225 Difference]: With dead ends: 157 [2025-02-06 01:24:38,731 INFO L226 Difference]: Without dead ends: 111 [2025-02-06 01:24:38,732 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 220 GetRequests, 202 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=112, Invalid=230, Unknown=0, NotChecked=0, Total=342 [2025-02-06 01:24:38,732 INFO L435 NwaCegarLoop]: 81 mSDtfsCounter, 131 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 221 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 139 SdHoareTripleChecker+Valid, 217 SdHoareTripleChecker+Invalid, 268 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 221 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.1s IncrementalHoareTripleChecker+Time [2025-02-06 01:24:38,734 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [139 Valid, 217 Invalid, 268 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 221 Invalid, 0 Unknown, 0 Unchecked, 3.1s Time] [2025-02-06 01:24:38,735 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2025-02-06 01:24:38,748 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 56. [2025-02-06 01:24:38,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 37 states have internal predecessors, (45), 16 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-02-06 01:24:38,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 77 transitions. [2025-02-06 01:24:38,749 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 77 transitions. Word has length 105 [2025-02-06 01:24:38,750 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 01:24:38,750 INFO L471 AbstractCegarLoop]: Abstraction has 56 states and 77 transitions. [2025-02-06 01:24:38,750 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-02-06 01:24:38,750 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 77 transitions. [2025-02-06 01:24:38,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-02-06 01:24:38,751 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 01:24:38,751 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:24:38,759 INFO L552 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)] Ended with exit code 0 [2025-02-06 01:24:38,953 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /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:24:38,953 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 01:24:38,954 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 01:24:38,955 INFO L85 PathProgramCache]: Analyzing trace with hash -730487512, now seen corresponding path program 1 times [2025-02-06 01:24:38,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 01:24:38,956 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1848232405] [2025-02-06 01:24:38,956 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 01:24:38,957 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:24:38,957 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 01:24:38,960 INFO L229 MonitoredProcess]: Starting monitored process 4 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:24:38,960 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 (4)] Waiting until timeout for monitored process [2025-02-06 01:24:39,000 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-02-06 01:24:39,148 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-02-06 01:24:39,148 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 01:24:39,148 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 01:24:39,154 INFO L256 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 20 conjuncts are in the unsatisfiable core [2025-02-06 01:24:39,162 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 01:25:00,537 WARN L286 SmtUtils]: Spent 6.16s on a formula simplification that was a NOOP. DAG size: 30 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2025-02-06 01:25:23,235 WARN L286 SmtUtils]: Spent 6.47s on a formula simplification that was a NOOP. DAG size: 35 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2025-02-06 01:26:05,230 WARN L286 SmtUtils]: Spent 8.32s on a formula simplification that was a NOOP. DAG size: 37 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)