./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-1.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 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-1.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 ae547c4902f7e11f87d7994462416820855bf00f967c780d5442969e651ce2e2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:25:27,059 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:25:27,119 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 13:25:27,125 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:25:27,125 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:25:27,145 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:25:27,146 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:25:27,146 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:25:27,146 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:25:27,146 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:25:27,147 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:25:27,147 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:25:27,148 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:25:27,148 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:25:27,148 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:25:27,148 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:25:27,149 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:25:27,149 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:25:27,150 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:25:27,150 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:25:27,150 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:25:27,150 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:27,150 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:25:27,150 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:27,151 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:25:27,151 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:25:27,152 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:25:27,152 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:25:27,152 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:25:27,152 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 -> ae547c4902f7e11f87d7994462416820855bf00f967c780d5442969e651ce2e2 [2025-01-09 13:25:27,376 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:25:27,381 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:25:27,383 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:25:27,383 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:25:27,384 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:25:27,384 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-1.i [2025-01-09 13:25:28,496 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/508cdc3cc/8a6c847343b94d06bec7d127a46fa438/FLAG276f203cd [2025-01-09 13:25:28,734 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:25:28,735 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-1.i [2025-01-09 13:25:28,751 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/508cdc3cc/8a6c847343b94d06bec7d127a46fa438/FLAG276f203cd [2025-01-09 13:25:29,072 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/508cdc3cc/8a6c847343b94d06bec7d127a46fa438 [2025-01-09 13:25:29,074 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:25:29,075 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:25:29,076 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:25:29,076 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:25:29,079 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:25:29,079 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,080 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@54705544 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29, skipping insertion in model container [2025-01-09 13:25:29,080 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,089 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:25:29,176 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-1.i[914,927] [2025-01-09 13:25:29,208 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:25:29,214 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:25:29,223 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-1.i[914,927] [2025-01-09 13:25:29,237 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:25:29,252 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:25:29,253 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29 WrapperNode [2025-01-09 13:25:29,253 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:25:29,254 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:25:29,254 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:25:29,254 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:25:29,258 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,262 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,281 INFO L138 Inliner]: procedures = 26, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 119 [2025-01-09 13:25:29,281 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:25:29,281 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:25:29,282 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:25:29,282 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:25:29,288 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,288 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,289 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,300 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-01-09 13:25:29,300 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,300 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,306 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,307 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,308 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,309 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,310 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,311 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:25:29,311 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:25:29,311 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:25:29,311 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:25:29,312 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (1/1) ... [2025-01-09 13:25:29,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:29,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:25:29,336 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-01-09 13:25:29,339 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-01-09 13:25:29,353 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:25:29,353 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:25:29,353 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:25:29,353 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:25:29,353 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:25:29,353 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:25:29,393 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:25:29,396 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:25:29,545 INFO L? ?]: Removed 11 outVars from TransFormulas that were not future-live. [2025-01-09 13:25:29,545 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:25:29,551 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:25:29,551 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:25:29,551 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:25:29 BoogieIcfgContainer [2025-01-09 13:25:29,551 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:25:29,553 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:25:29,553 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:25:29,555 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:25:29,556 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:25:29" (1/3) ... [2025-01-09 13:25:29,556 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@82d37aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:25:29, skipping insertion in model container [2025-01-09 13:25:29,556 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:29" (2/3) ... [2025-01-09 13:25:29,556 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@82d37aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:25:29, skipping insertion in model container [2025-01-09 13:25:29,556 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:25:29" (3/3) ... [2025-01-09 13:25:29,557 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-1.i [2025-01-09 13:25:29,566 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:25:29,567 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-1.i that has 2 procedures, 53 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:25:29,603 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:25:29,613 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;@30b03034, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:25:29,614 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:25:29,616 INFO L276 IsEmpty]: Start isEmpty. Operand has 53 states, 41 states have (on average 1.4390243902439024) internal successors, (59), 42 states have internal predecessors, (59), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2025-01-09 13:25:29,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2025-01-09 13:25:29,620 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:25:29,621 INFO L218 NwaCegarLoop]: trace histogram [9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 13:25:29,621 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:25:29,625 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:25:29,626 INFO L85 PathProgramCache]: Analyzing trace with hash -346523489, now seen corresponding path program 1 times [2025-01-09 13:25:29,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:25:29,631 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1164114247] [2025-01-09 13:25:29,631 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:25:29,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:25:29,692 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:25:29,708 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:25:29,710 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:29,710 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:25:29,776 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2025-01-09 13:25:29,777 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:25:29,777 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1164114247] [2025-01-09 13:25:29,777 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1164114247] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:25:29,778 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1364406616] [2025-01-09 13:25:29,778 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:25:29,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:25:29,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:25:29,782 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-01-09 13:25:29,785 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-01-09 13:25:29,839 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:25:29,871 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:25:29,871 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:29,871 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:25:29,872 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:25:29,875 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:25:29,885 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 16 proven. 0 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2025-01-09 13:25:29,885 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:25:29,885 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1364406616] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:25:29,885 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 13:25:29,885 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 13:25:29,886 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [501445695] [2025-01-09 13:25:29,887 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:25:29,889 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:25:29,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:25:29,899 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:25:29,899 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:25:29,901 INFO L87 Difference]: Start difference. First operand has 53 states, 41 states have (on average 1.4390243902439024) internal successors, (59), 42 states have internal predecessors, (59), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (9), 1 states have call predecessors, (9), 2 states have call successors, (9) [2025-01-09 13:25:29,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:25:29,912 INFO L93 Difference]: Finished difference Result 100 states and 158 transitions. [2025-01-09 13:25:29,912 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:25:29,913 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (9), 1 states have call predecessors, (9), 2 states have call successors, (9) Word has length 66 [2025-01-09 13:25:29,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:25:29,916 INFO L225 Difference]: With dead ends: 100 [2025-01-09 13:25:29,916 INFO L226 Difference]: Without dead ends: 50 [2025-01-09 13:25:29,918 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 67 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-01-09 13:25:29,920 INFO L435 NwaCegarLoop]: 72 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, 72 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-01-09 13:25:29,920 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:25:29,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2025-01-09 13:25:29,936 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2025-01-09 13:25:29,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 39 states have (on average 1.3846153846153846) internal successors, (54), 39 states have internal predecessors, (54), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2025-01-09 13:25:29,939 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 72 transitions. [2025-01-09 13:25:29,940 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 72 transitions. Word has length 66 [2025-01-09 13:25:29,940 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:25:29,940 INFO L471 AbstractCegarLoop]: Abstraction has 50 states and 72 transitions. [2025-01-09 13:25:29,940 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (9), 1 states have call predecessors, (9), 2 states have call successors, (9) [2025-01-09 13:25:29,941 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 72 transitions. [2025-01-09 13:25:29,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2025-01-09 13:25:29,942 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:25:29,942 INFO L218 NwaCegarLoop]: trace histogram [9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 13:25:29,948 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-01-09 13:25:30,147 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-01-09 13:25:30,150 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:25:30,151 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:25:30,151 INFO L85 PathProgramCache]: Analyzing trace with hash -2123922911, now seen corresponding path program 1 times [2025-01-09 13:25:30,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:25:30,151 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [509584561] [2025-01-09 13:25:30,151 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:25:30,151 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:25:30,169 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:25:30,233 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:25:30,233 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:30,233 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:25:30,233 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:25:30,241 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:25:30,279 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:25:30,281 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:30,281 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:25:30,303 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:25:30,303 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:25:30,304 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:25:30,305 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 13:25:30,307 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 13:25:30,351 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:25:30,353 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:25:30 BoogieIcfgContainer [2025-01-09 13:25:30,353 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:25:30,354 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:25:30,354 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:25:30,354 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:25:30,354 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:25:29" (3/4) ... [2025-01-09 13:25:30,356 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:25:30,356 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:25:30,357 INFO L158 Benchmark]: Toolchain (without parser) took 1281.79ms. Allocated memory is still 142.6MB. Free memory was 113.3MB in the beginning and 107.8MB in the end (delta: 5.5MB). Peak memory consumption was 5.1MB. Max. memory is 16.1GB. [2025-01-09 13:25:30,357 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 124.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:25:30,357 INFO L158 Benchmark]: CACSL2BoogieTranslator took 177.85ms. Allocated memory is still 142.6MB. Free memory was 112.9MB in the beginning and 100.8MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:25:30,357 INFO L158 Benchmark]: Boogie Procedure Inliner took 26.98ms. Allocated memory is still 142.6MB. Free memory was 100.8MB in the beginning and 99.1MB in the end (delta: 1.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:25:30,357 INFO L158 Benchmark]: Boogie Preprocessor took 29.31ms. Allocated memory is still 142.6MB. Free memory was 99.1MB in the beginning and 97.4MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:25:30,358 INFO L158 Benchmark]: RCFGBuilder took 240.05ms. Allocated memory is still 142.6MB. Free memory was 97.4MB in the beginning and 81.8MB in the end (delta: 15.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 13:25:30,358 INFO L158 Benchmark]: TraceAbstraction took 800.81ms. Allocated memory is still 142.6MB. Free memory was 81.4MB in the beginning and 108.6MB in the end (delta: -27.2MB). Peak memory consumption was 47.0MB. Max. memory is 16.1GB. [2025-01-09 13:25:30,358 INFO L158 Benchmark]: Witness Printer took 2.34ms. Allocated memory is still 142.6MB. Free memory was 107.9MB in the beginning and 107.8MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:25:30,359 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 124.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 177.85ms. Allocated memory is still 142.6MB. Free memory was 112.9MB in the beginning and 100.8MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 26.98ms. Allocated memory is still 142.6MB. Free memory was 100.8MB in the beginning and 99.1MB in the end (delta: 1.6MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 29.31ms. Allocated memory is still 142.6MB. Free memory was 99.1MB in the beginning and 97.4MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * RCFGBuilder took 240.05ms. Allocated memory is still 142.6MB. Free memory was 97.4MB in the beginning and 81.8MB in the end (delta: 15.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 800.81ms. Allocated memory is still 142.6MB. Free memory was 81.4MB in the beginning and 108.6MB in the end (delta: -27.2MB). Peak memory consumption was 47.0MB. Max. memory is 16.1GB. * Witness Printer took 2.34ms. Allocated memory is still 142.6MB. Free memory was 107.9MB in the beginning and 107.8MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 66, overapproximation of someBinaryFLOATComparisonOperation at line 86, overapproximation of someBinaryFLOATComparisonOperation at line 54, overapproximation of someBinaryFLOATComparisonOperation at line 86, overapproximation of someBinaryFLOATComparisonOperation at line 38, overapproximation of someUnaryFLOAToperation at line 55. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] float var_1_1 = 5.5; [L23] float var_1_4 = 256.2; [L24] unsigned char var_1_5 = 128; [L25] unsigned char var_1_9 = 25; [L26] signed char var_1_10 = 4; [L27] unsigned char var_1_11 = 0; [L28] unsigned char var_1_12 = 1; [L29] signed char var_1_13 = -1; [L30] signed long int var_1_14 = 256; [L31] float var_1_15 = 127.2; [L32] signed char last_1_var_1_10 = 4; [L33] signed long int last_1_var_1_14 = 256; [L34] float last_1_var_1_15 = 127.2; VAL [isInitial=0, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_4=1281/5, var_1_5=128, var_1_9=25] [L90] isInitial = 1 [L91] FCALL initially() [L93] CALL updateLastVariables() [L81] last_1_var_1_10 = var_1_10 [L82] last_1_var_1_14 = var_1_14 [L83] last_1_var_1_15 = var_1_15 VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_4=1281/5, var_1_5=128, var_1_9=25] [L93] RET updateLastVariables() [L94] CALL updateVariables() [L65] var_1_4 = __VERIFIER_nondet_float() [L66] CALL assume_abort_if_not((var_1_4 >= -922337.2036854765600e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854765600e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=25] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=25] [L66] RET assume_abort_if_not((var_1_4 >= -922337.2036854765600e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854765600e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=25] [L67] var_1_9 = __VERIFIER_nondet_uchar() [L68] CALL assume_abort_if_not(var_1_9 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128] [L68] RET assume_abort_if_not(var_1_9 >= 0) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128] [L69] CALL assume_abort_if_not(var_1_9 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L69] RET assume_abort_if_not(var_1_9 <= 254) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L70] var_1_11 = __VERIFIER_nondet_uchar() [L71] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L71] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L72] CALL assume_abort_if_not(var_1_11 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L72] RET assume_abort_if_not(var_1_11 <= 1) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L73] var_1_12 = __VERIFIER_nondet_uchar() [L74] CALL assume_abort_if_not(var_1_12 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L74] RET assume_abort_if_not(var_1_12 >= 0) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L75] CALL assume_abort_if_not(var_1_12 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L75] RET assume_abort_if_not(var_1_12 <= 1) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=-1, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L76] var_1_13 = __VERIFIER_nondet_char() [L77] CALL assume_abort_if_not(var_1_13 >= -127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L77] RET assume_abort_if_not(var_1_13 >= -127) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L78] CALL assume_abort_if_not(var_1_13 <= 126) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L78] RET assume_abort_if_not(var_1_13 <= 126) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L94] RET updateVariables() [L95] CALL step() [L38] COND FALSE !(last_1_var_1_15 < ((((25.2f) < 0 ) ? -(25.2f) : (25.2f)))) [L45] var_1_5 = var_1_9 VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=-2, var_1_9=-2] [L47] var_1_14 = var_1_5 VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=636/5, var_1_1=11/2, var_1_5=-2, var_1_9=-2] [L48] COND FALSE !(\read(var_1_11)) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=636/5, var_1_1=11/2, var_1_5=-2, var_1_9=-2] [L53] var_1_15 = var_1_4 VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=261, var_1_1=11/2, var_1_4=261, var_1_5=-2, var_1_9=-2] [L54] COND TRUE var_1_15 <= (- var_1_15) [L55] var_1_1 = ((((var_1_4) < 0 ) ? -(var_1_4) : (var_1_4))) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=261, var_1_1=261, var_1_4=261, var_1_5=-2, var_1_9=-2] [L95] RET step() [L96] CALL, EXPR property() [L86] EXPR ((var_1_15 <= (- var_1_15)) ? (var_1_1 == ((float) ((((var_1_4) < 0 ) ? -(var_1_4) : (var_1_4))))) : ((var_1_15 > var_1_15) ? (var_1_1 == ((float) var_1_4)) : (var_1_1 == ((float) var_1_4)))) && ((last_1_var_1_15 < ((((25.2f) < 0 ) ? -(25.2f) : (25.2f)))) ? ((((4 + last_1_var_1_10) ^ last_1_var_1_14) >= last_1_var_1_10) ? (var_1_5 == ((unsigned char) 0)) : (var_1_5 == ((unsigned char) var_1_9))) : (var_1_5 == ((unsigned char) var_1_9))) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=261, var_1_1=261, var_1_4=261, var_1_5=-2, var_1_9=-2] [L86-L87] return (((((var_1_15 <= (- var_1_15)) ? (var_1_1 == ((float) ((((var_1_4) < 0 ) ? -(var_1_4) : (var_1_4))))) : ((var_1_15 > var_1_15) ? (var_1_1 == ((float) var_1_4)) : (var_1_1 == ((float) var_1_4)))) && ((last_1_var_1_15 < ((((25.2f) < 0 ) ? -(25.2f) : (25.2f)))) ? ((((4 + last_1_var_1_10) ^ last_1_var_1_14) >= last_1_var_1_10) ? (var_1_5 == ((unsigned char) 0)) : (var_1_5 == ((unsigned char) var_1_9))) : (var_1_5 == ((unsigned char) var_1_9)))) && (var_1_11 ? ((! var_1_12) ? (var_1_10 == ((signed char) var_1_13)) : 1) : 1)) && (var_1_14 == ((signed long int) var_1_5))) && (var_1_15 == ((float) var_1_4)) ; [L96] RET, EXPR property() [L96] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=261, var_1_1=261, var_1_4=261, var_1_5=-2, var_1_9=-2] [L19] reach_error() VAL [isInitial=1, last_1_var_1_10=4, last_1_var_1_14=256, last_1_var_1_15=636/5, var_1_10=4, var_1_11=0, var_1_12=1, var_1_13=126, var_1_14=254, var_1_15=261, var_1_1=261, var_1_4=261, var_1_5=-2, var_1_9=-2] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 53 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.7s, OverallIterations: 2, TraceHistogramMax: 9, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 72 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 72 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 67 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=53occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 198 NumberOfCodeBlocks, 198 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 130 ConstructedInterpolants, 0 QuantifiedInterpolants, 130 SizeOfPredicates, 0 NumberOfNonLiveVariables, 173 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 272/288 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-01-09 13:25:30,372 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-1.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 ae547c4902f7e11f87d7994462416820855bf00f967c780d5442969e651ce2e2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:25:32,228 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:25:32,288 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-01-09 13:25:32,292 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:25:32,292 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:25:32,315 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:25:32,315 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:25:32,315 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:25:32,316 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:25:32,316 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:25:32,316 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:25:32,316 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:25:32,316 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:25:32,317 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:32,317 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:25:32,317 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:32,318 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:25:32,318 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:25:32,318 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 -> ae547c4902f7e11f87d7994462416820855bf00f967c780d5442969e651ce2e2 [2025-01-09 13:25:32,624 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:25:32,629 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:25:32,631 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:25:32,631 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:25:32,631 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:25:32,632 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-1.i [2025-01-09 13:25:33,802 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/037fabd81/26f8cec258644225bbecffe3a8c4dc17/FLAGb84838128 [2025-01-09 13:25:34,014 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:25:34,014 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-1.i [2025-01-09 13:25:34,020 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/037fabd81/26f8cec258644225bbecffe3a8c4dc17/FLAGb84838128 [2025-01-09 13:25:34,031 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/037fabd81/26f8cec258644225bbecffe3a8c4dc17 [2025-01-09 13:25:34,033 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:25:34,034 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:25:34,036 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:25:34,038 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:25:34,040 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:25:34,041 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,041 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e861033 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34, skipping insertion in model container [2025-01-09 13:25:34,041 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,051 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:25:34,139 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-1.i[914,927] [2025-01-09 13:25:34,165 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:25:34,176 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:25:34,183 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-1.i[914,927] [2025-01-09 13:25:34,196 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:25:34,206 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:25:34,206 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34 WrapperNode [2025-01-09 13:25:34,207 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:25:34,207 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:25:34,207 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:25:34,208 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:25:34,211 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,219 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,233 INFO L138 Inliner]: procedures = 27, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 86 [2025-01-09 13:25:34,233 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:25:34,234 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:25:34,235 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:25:34,235 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:25:34,240 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,240 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,246 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,259 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-01-09 13:25:34,259 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,259 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,275 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,276 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,281 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,282 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,283 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,291 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:25:34,292 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:25:34,292 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:25:34,292 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:25:34,292 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (1/1) ... [2025-01-09 13:25:34,302 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:25:34,311 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:25:34,323 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-01-09 13:25:34,327 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-01-09 13:25:34,338 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:25:34,338 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:25:34,338 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:25:34,338 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:25:34,338 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:25:34,338 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:25:34,383 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:25:34,384 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:25:34,533 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-01-09 13:25:34,533 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:25:34,542 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:25:34,542 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:25:34,542 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:25:34 BoogieIcfgContainer [2025-01-09 13:25:34,542 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:25:34,544 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:25:34,544 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:25:34,548 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:25:34,548 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:25:34" (1/3) ... [2025-01-09 13:25:34,549 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@533399fc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:25:34, skipping insertion in model container [2025-01-09 13:25:34,549 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:25:34" (2/3) ... [2025-01-09 13:25:34,549 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@533399fc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:25:34, skipping insertion in model container [2025-01-09 13:25:34,549 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:25:34" (3/3) ... [2025-01-09 13:25:34,549 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-1.i [2025-01-09 13:25:34,560 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:25:34,561 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-1.i that has 2 procedures, 40 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:25:34,600 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:25:34,609 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;@1b9775e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:25:34,609 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:25:34,612 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 28 states have (on average 1.3571428571428572) internal successors, (38), 29 states have internal predecessors, (38), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2025-01-09 13:25:34,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:25:34,618 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:25:34,618 INFO L218 NwaCegarLoop]: trace histogram [9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 13:25:34,618 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:25:34,623 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:25:34,624 INFO L85 PathProgramCache]: Analyzing trace with hash 800154623, now seen corresponding path program 1 times [2025-01-09 13:25:34,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:25:34,632 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1187203893] [2025-01-09 13:25:34,632 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:25:34,632 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-01-09 13:25:34,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:25:34,635 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-01-09 13:25:34,637 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-01-09 13:25:34,685 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:25:34,753 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:25:34,753 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:34,753 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:25:34,757 INFO L256 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:25:34,761 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:25:34,779 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 80 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2025-01-09 13:25:34,779 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:25:34,780 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:25:34,780 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1187203893] [2025-01-09 13:25:34,780 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1187203893] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:25:34,780 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:25:34,780 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 13:25:34,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [133274388] [2025-01-09 13:25:34,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:25:34,784 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:25:34,784 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:25:34,794 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:25:34,794 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:25:34,795 INFO L87 Difference]: Start difference. First operand has 40 states, 28 states have (on average 1.3571428571428572) internal successors, (38), 29 states have internal predecessors, (38), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2025-01-09 13:25:34,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:25:34,810 INFO L93 Difference]: Finished difference Result 74 states and 116 transitions. [2025-01-09 13:25:34,811 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:25:34,811 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 64 [2025-01-09 13:25:34,811 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:25:34,814 INFO L225 Difference]: With dead ends: 74 [2025-01-09 13:25:34,814 INFO L226 Difference]: Without dead ends: 37 [2025-01-09 13:25:34,816 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 63 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-01-09 13:25:34,817 INFO L435 NwaCegarLoop]: 50 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, 50 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-01-09 13:25:34,817 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:25:34,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2025-01-09 13:25:34,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2025-01-09 13:25:34,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 1 states have call predecessors, (9), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2025-01-09 13:25:34,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 50 transitions. [2025-01-09 13:25:34,837 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 50 transitions. Word has length 64 [2025-01-09 13:25:34,837 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:25:34,837 INFO L471 AbstractCegarLoop]: Abstraction has 37 states and 50 transitions. [2025-01-09 13:25:34,837 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 13.0) internal successors, (26), 2 states have internal predecessors, (26), 2 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2025-01-09 13:25:34,837 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 50 transitions. [2025-01-09 13:25:34,839 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:25:34,839 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:25:34,839 INFO L218 NwaCegarLoop]: trace histogram [9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 13:25:34,846 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2025-01-09 13:25:35,043 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-01-09 13:25:35,043 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:25:35,045 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:25:35,045 INFO L85 PathProgramCache]: Analyzing trace with hash -1583815167, now seen corresponding path program 1 times [2025-01-09 13:25:35,046 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:25:35,046 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [945580517] [2025-01-09 13:25:35,046 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:25:35,046 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-01-09 13:25:35,046 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:25:35,048 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-01-09 13:25:35,050 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-01-09 13:25:35,081 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:25:35,170 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:25:35,170 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:25:35,170 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:25:35,173 INFO L256 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 17 conjuncts are in the unsatisfiable core [2025-01-09 13:25:35,178 INFO L279 TraceCheckSpWp]: Computing forward predicates...