./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_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-1loop_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 4192a66ffc83592f60e35a5895253308c2ec852cebf43b3c62da49fcf7a2168c --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:14:20,861 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:14:20,906 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:14:20,909 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:14:20,910 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:14:20,923 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:14:20,923 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:14:20,923 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:14:20,924 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:14:20,924 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:14:20,924 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:14:20,924 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:14:20,924 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:14:20,924 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:14:20,924 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:14:20,924 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:14:20,924 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:14:20,925 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:20,925 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:14:20,925 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:20,926 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:14:20,926 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:14:20,927 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 -> 4192a66ffc83592f60e35a5895253308c2ec852cebf43b3c62da49fcf7a2168c [2025-01-09 13:14:21,119 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:14:21,125 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:14:21,127 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:14:21,128 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:14:21,128 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:14:21,129 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-1loop_file-1.i [2025-01-09 13:14:22,353 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/dc1c546b3/e1b6d4f2a4084b1f8912e5778c355a47/FLAG76cbff16f [2025-01-09 13:14:22,639 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:14:22,640 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-1.i [2025-01-09 13:14:22,650 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/dc1c546b3/e1b6d4f2a4084b1f8912e5778c355a47/FLAG76cbff16f [2025-01-09 13:14:22,938 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/dc1c546b3/e1b6d4f2a4084b1f8912e5778c355a47 [2025-01-09 13:14:22,943 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:14:22,945 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:14:22,950 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:14:22,950 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:14:22,953 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:14:22,957 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:14:22" (1/1) ... [2025-01-09 13:14:22,958 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@e42eceb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:22, skipping insertion in model container [2025-01-09 13:14:22,958 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:14:22" (1/1) ... [2025-01-09 13:14:22,973 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:14:23,076 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-1loop_file-1.i[914,927] [2025-01-09 13:14:23,119 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:14:23,132 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:14:23,141 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-1loop_file-1.i[914,927] [2025-01-09 13:14:23,159 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:14:23,175 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:14:23,176 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23 WrapperNode [2025-01-09 13:14:23,176 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:14:23,178 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:14:23,178 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:14:23,179 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:14:23,186 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:14:23" (1/1) ... [2025-01-09 13:14:23,192 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:14:23" (1/1) ... [2025-01-09 13:14:23,212 INFO L138 Inliner]: procedures = 26, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 124 [2025-01-09 13:14:23,216 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:14:23,216 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:14:23,217 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:14:23,217 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:14:23,224 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,225 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,230 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,246 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:14:23,246 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,246 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,255 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,259 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,265 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,266 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,267 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,269 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:14:23,269 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:14:23,270 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:14:23,270 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:14:23,270 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (1/1) ... [2025-01-09 13:14:23,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:23,284 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:14:23,297 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:14:23,300 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:14:23,318 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:14:23,318 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:14:23,318 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:14:23,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:14:23,318 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:14:23,319 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:14:23,385 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:14:23,390 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:14:23,677 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-01-09 13:14:23,679 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:14:23,688 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:14:23,689 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 13:14:23,689 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:14:23 BoogieIcfgContainer [2025-01-09 13:14:23,689 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:14:23,691 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:14:23,692 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:14:23,695 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:14:23,695 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:14:22" (1/3) ... [2025-01-09 13:14:23,696 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@46472928 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:14:23, skipping insertion in model container [2025-01-09 13:14:23,696 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:23" (2/3) ... [2025-01-09 13:14:23,697 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@46472928 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:14:23, skipping insertion in model container [2025-01-09 13:14:23,697 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:14:23" (3/3) ... [2025-01-09 13:14:23,698 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-1.i [2025-01-09 13:14:23,710 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:14:23,713 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-1loop_file-1.i that has 2 procedures, 53 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:14:23,752 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:14:23,762 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;@60959d65, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:14:23,764 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:14:23,767 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:14:23,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2025-01-09 13:14:23,772 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:14:23,773 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:14:23,773 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:14:23,776 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:14:23,777 INFO L85 PathProgramCache]: Analyzing trace with hash -346523489, now seen corresponding path program 1 times [2025-01-09 13:14:23,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:14:23,782 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2096369194] [2025-01-09 13:14:23,782 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:14:23,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:14:23,852 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:14:23,880 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:14:23,880 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:23,880 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:14:23,958 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:14:23,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:14:23,958 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2096369194] [2025-01-09 13:14:23,959 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2096369194] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:14:23,959 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [996448477] [2025-01-09 13:14:23,959 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:14:23,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:14:23,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:14:23,962 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:14:23,963 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:14:24,018 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:14:24,046 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:14:24,046 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:24,047 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:14:24,048 INFO L256 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:14:24,052 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:14:24,071 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:14:24,071 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:14:24,072 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [996448477] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:14:24,072 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 13:14:24,072 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 13:14:24,073 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2017578555] [2025-01-09 13:14:24,074 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:14:24,077 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:14:24,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:14:24,090 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:14:24,090 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:14:24,092 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:14:24,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:14:24,106 INFO L93 Difference]: Finished difference Result 103 states and 160 transitions. [2025-01-09 13:14:24,106 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:14:24,108 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:14:24,108 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:14:24,112 INFO L225 Difference]: With dead ends: 103 [2025-01-09 13:14:24,113 INFO L226 Difference]: Without dead ends: 50 [2025-01-09 13:14:24,115 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:14:24,117 INFO L435 NwaCegarLoop]: 75 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, 75 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:14:24,118 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:14:24,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2025-01-09 13:14:24,141 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2025-01-09 13:14:24,143 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:14:24,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 72 transitions. [2025-01-09 13:14:24,152 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 72 transitions. Word has length 66 [2025-01-09 13:14:24,152 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:14:24,152 INFO L471 AbstractCegarLoop]: Abstraction has 50 states and 72 transitions. [2025-01-09 13:14:24,152 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:14:24,153 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 72 transitions. [2025-01-09 13:14:24,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2025-01-09 13:14:24,155 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:14:24,156 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:14:24,163 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-01-09 13:14:24,357 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:14:24,357 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:14:24,358 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:14:24,359 INFO L85 PathProgramCache]: Analyzing trace with hash -2123922911, now seen corresponding path program 1 times [2025-01-09 13:14:24,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:14:24,359 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1289744323] [2025-01-09 13:14:24,359 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:14:24,359 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:14:24,372 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:14:24,438 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:14:24,439 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:24,440 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:14:24,440 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:14:24,450 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-09 13:14:24,489 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-09 13:14:24,491 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:24,491 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:14:24,523 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:14:24,523 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:14:24,524 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:14:24,526 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 13:14:24,532 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 13:14:24,582 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:14:24,585 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:14:24 BoogieIcfgContainer [2025-01-09 13:14:24,585 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:14:24,586 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:14:24,586 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:14:24,588 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:14:24,589 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:14:23" (3/4) ... [2025-01-09 13:14:24,592 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:14:24,593 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:14:24,593 INFO L158 Benchmark]: Toolchain (without parser) took 1648.86ms. Allocated memory is still 167.8MB. Free memory was 132.0MB in the beginning and 56.0MB in the end (delta: 76.0MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: CDTParser took 0.25ms. Allocated memory is still 201.3MB. Free memory is still 126.9MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: CACSL2BoogieTranslator took 227.16ms. Allocated memory is still 167.8MB. Free memory was 132.0MB in the beginning and 119.9MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: Boogie Procedure Inliner took 37.60ms. Allocated memory is still 167.8MB. Free memory was 119.9MB in the beginning and 117.9MB in the end (delta: 2.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: Boogie Preprocessor took 52.72ms. Allocated memory is still 167.8MB. Free memory was 117.9MB in the beginning and 116.0MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: RCFGBuilder took 420.43ms. Allocated memory is still 167.8MB. Free memory was 116.0MB in the beginning and 100.7MB in the end (delta: 15.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 13:14:24,594 INFO L158 Benchmark]: TraceAbstraction took 894.00ms. Allocated memory is still 167.8MB. Free memory was 99.8MB in the beginning and 56.0MB in the end (delta: 43.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-01-09 13:14:24,595 INFO L158 Benchmark]: Witness Printer took 7.24ms. Allocated memory is still 167.8MB. Free memory is still 56.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:14:24,596 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.25ms. Allocated memory is still 201.3MB. Free memory is still 126.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 227.16ms. Allocated memory is still 167.8MB. Free memory was 132.0MB in the beginning and 119.9MB in the end (delta: 12.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 37.60ms. Allocated memory is still 167.8MB. Free memory was 119.9MB in the beginning and 117.9MB in the end (delta: 2.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 52.72ms. Allocated memory is still 167.8MB. Free memory was 117.9MB in the beginning and 116.0MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 420.43ms. Allocated memory is still 167.8MB. Free memory was 116.0MB in the beginning and 100.7MB in the end (delta: 15.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 894.00ms. Allocated memory is still 167.8MB. Free memory was 99.8MB in the beginning and 56.0MB in the end (delta: 43.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Witness Printer took 7.24ms. Allocated memory is still 167.8MB. Free memory is still 56.0MB. 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 86, overapproximation of someBinaryFLOATComparisonOperation at line 66, overapproximation of someBinaryFLOATComparisonOperation at line 54, overapproximation of someBinaryFLOATComparisonOperation at line 38, overapproximation of someBinaryFLOATComparisonOperation at line 86, 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() [L92] int k_loop; [L93] k_loop = 0 VAL [isInitial=1, k_loop=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] [L93] COND TRUE k_loop < 1 [L94] 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] [L94] RET updateLastVariables() [L95] 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=-127, 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=-127, 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=-127, 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=-127, 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=-127, 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=-127, var_1_14=256, var_1_15=636/5, var_1_1=11/2, var_1_5=128, var_1_9=-2] [L95] RET updateVariables() [L96] 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=-127, 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=-127, 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=-127, 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=-127, 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=-127, var_1_14=254, var_1_15=261, var_1_1=261, var_1_4=261, var_1_5=-2, var_1_9=-2] [L96] RET step() [L97] 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=-127, 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)) ; [L97] RET, EXPR property() [L97] 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=-127, 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=-127, 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.8s, 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, 75 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, 75 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, 175 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:14:24,611 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, 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-1loop_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 4192a66ffc83592f60e35a5895253308c2ec852cebf43b3c62da49fcf7a2168c --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:14:26,609 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:14:26,681 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:14:26,693 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:14:26,693 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:14:26,719 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:14:26,720 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:14:26,720 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:14:26,721 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:14:26,721 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:14:26,722 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:14:26,722 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:14:26,722 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:14:26,722 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:14:26,723 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:14:26,723 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:14:26,724 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:14:26,724 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:14:26,724 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:14:26,724 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:14:26,724 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:26,725 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:26,725 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:14:26,725 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:14:26,725 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 -> 4192a66ffc83592f60e35a5895253308c2ec852cebf43b3c62da49fcf7a2168c [2025-01-09 13:14:26,964 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:14:26,976 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:14:26,978 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:14:26,979 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:14:26,980 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:14:26,980 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-1loop_file-1.i [2025-01-09 13:14:28,179 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c7939cdad/a53d7964b3e44f778e827e1beba396de/FLAGf3e1d0ce7 [2025-01-09 13:14:28,382 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:14:28,383 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-1.i [2025-01-09 13:14:28,391 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c7939cdad/a53d7964b3e44f778e827e1beba396de/FLAGf3e1d0ce7 [2025-01-09 13:14:28,404 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/c7939cdad/a53d7964b3e44f778e827e1beba396de [2025-01-09 13:14:28,406 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:14:28,407 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:14:28,408 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:14:28,408 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:14:28,411 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:14:28,415 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,416 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1fbe7f9e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28, skipping insertion in model container [2025-01-09 13:14:28,416 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,431 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:14:28,541 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-1loop_file-1.i[914,927] [2025-01-09 13:14:28,578 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:14:28,591 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:14:28,601 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-1loop_file-1.i[914,927] [2025-01-09 13:14:28,610 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:14:28,620 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:14:28,623 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28 WrapperNode [2025-01-09 13:14:28,623 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:14:28,624 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:14:28,624 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:14:28,624 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:14:28,628 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:14:28" (1/1) ... [2025-01-09 13:14:28,639 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:14:28" (1/1) ... [2025-01-09 13:14:28,656 INFO L138 Inliner]: procedures = 27, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 91 [2025-01-09 13:14:28,658 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:14:28,659 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:14:28,659 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:14:28,659 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:14:28,665 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,665 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,667 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,676 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:14:28,680 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,681 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,690 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,690 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,692 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,696 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,700 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,701 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:14:28,702 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:14:28,702 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:14:28,702 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:14:28,706 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (1/1) ... [2025-01-09 13:14:28,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:14:28,720 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:14:28,734 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:14:28,737 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:14:28,755 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:14:28,757 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:14:28,758 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:14:28,758 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:14:28,758 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:14:28,758 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:14:28,814 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:14:28,816 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:14:29,011 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-01-09 13:14:29,012 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:14:29,020 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:14:29,020 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 13:14:29,021 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:14:29 BoogieIcfgContainer [2025-01-09 13:14:29,021 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:14:29,029 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:14:29,030 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:14:29,034 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:14:29,034 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:14:28" (1/3) ... [2025-01-09 13:14:29,035 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e9aa11d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:14:29, skipping insertion in model container [2025-01-09 13:14:29,035 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:14:28" (2/3) ... [2025-01-09 13:14:29,036 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e9aa11d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:14:29, skipping insertion in model container [2025-01-09 13:14:29,037 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:14:29" (3/3) ... [2025-01-09 13:14:29,038 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-1.i [2025-01-09 13:14:29,055 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:14:29,056 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-1loop_file-1.i that has 2 procedures, 40 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:14:29,103 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:14:29,111 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;@515cfafd, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:14:29,112 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:14:29,115 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:14:29,120 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:14:29,121 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:14:29,121 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:14:29,122 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:14:29,127 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:14:29,127 INFO L85 PathProgramCache]: Analyzing trace with hash 800154623, now seen corresponding path program 1 times [2025-01-09 13:14:29,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:14:29,138 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1636551893] [2025-01-09 13:14:29,139 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:14:29,139 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:14:29,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:14:29,143 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:14:29,144 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:14:29,200 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:14:29,274 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:14:29,275 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:29,275 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:14:29,279 INFO L256 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:14:29,283 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:14:29,310 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:14:29,312 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:14:29,312 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:14:29,312 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1636551893] [2025-01-09 13:14:29,313 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1636551893] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:14:29,313 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:14:29,313 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 13:14:29,314 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1591190655] [2025-01-09 13:14:29,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:14:29,317 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:14:29,317 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:14:29,328 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:14:29,328 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:14:29,330 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:14:29,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:14:29,342 INFO L93 Difference]: Finished difference Result 77 states and 118 transitions. [2025-01-09 13:14:29,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:14:29,343 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:14:29,344 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:14:29,348 INFO L225 Difference]: With dead ends: 77 [2025-01-09 13:14:29,348 INFO L226 Difference]: Without dead ends: 37 [2025-01-09 13:14:29,350 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:14:29,352 INFO L435 NwaCegarLoop]: 53 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, 53 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:14:29,352 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:14:29,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2025-01-09 13:14:29,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2025-01-09 13:14:29,371 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:14:29,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 50 transitions. [2025-01-09 13:14:29,374 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 50 transitions. Word has length 64 [2025-01-09 13:14:29,374 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:14:29,374 INFO L471 AbstractCegarLoop]: Abstraction has 37 states and 50 transitions. [2025-01-09 13:14:29,375 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:14:29,375 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 50 transitions. [2025-01-09 13:14:29,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:14:29,376 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:14:29,376 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:14:29,384 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-01-09 13:14:29,577 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:14:29,577 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:14:29,578 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:14:29,578 INFO L85 PathProgramCache]: Analyzing trace with hash -1583815167, now seen corresponding path program 1 times [2025-01-09 13:14:29,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:14:29,578 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1840094635] [2025-01-09 13:14:29,578 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:14:29,578 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:14:29,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:14:29,582 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:14:29,583 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:14:29,610 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:14:29,692 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:14:29,692 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:14:29,692 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:14:29,695 INFO L256 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 17 conjuncts are in the unsatisfiable core [2025-01-09 13:14:29,700 INFO L279 TraceCheckSpWp]: Computing forward predicates...