./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-36.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-36.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 0106173d0264f3b7073aa037c767f5a06a37b054d6eaa32bc9517002adc60cc2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:29:03,347 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:29:03,405 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:29:03,410 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:29:03,410 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:29:03,431 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:29:03,431 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:29:03,431 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:29:03,432 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:29:03,432 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:29:03,432 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:29:03,432 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:29:03,432 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:29:03,434 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:29:03,434 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:03,435 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:03,435 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:29:03,435 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:29:03,436 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:29:03,436 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:29:03,436 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:29:03,436 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:29:03,436 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 -> 0106173d0264f3b7073aa037c767f5a06a37b054d6eaa32bc9517002adc60cc2 [2025-01-09 13:29:03,647 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:29:03,654 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:29:03,657 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:29:03,657 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:29:03,658 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:29:03,658 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-36.i [2025-01-09 13:29:04,907 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/289d197ee/061d833d845e48fe812f0c603b0084b1/FLAG14c06732f [2025-01-09 13:29:05,185 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:29:05,185 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-36.i [2025-01-09 13:29:05,199 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/289d197ee/061d833d845e48fe812f0c603b0084b1/FLAG14c06732f [2025-01-09 13:29:05,482 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/289d197ee/061d833d845e48fe812f0c603b0084b1 [2025-01-09 13:29:05,485 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:29:05,485 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:29:05,487 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:05,487 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:29:05,490 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:29:05,490 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,491 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2fe2b4ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05, skipping insertion in model container [2025-01-09 13:29:05,491 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,507 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:29:05,599 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-36.i[915,928] [2025-01-09 13:29:05,630 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:05,637 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:29:05,646 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-36.i[915,928] [2025-01-09 13:29:05,661 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:05,672 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:29:05,674 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05 WrapperNode [2025-01-09 13:29:05,675 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:05,675 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:05,675 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:29:05,675 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:29:05,680 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:29:05" (1/1) ... [2025-01-09 13:29:05,684 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:29:05" (1/1) ... [2025-01-09 13:29:05,704 INFO L138 Inliner]: procedures = 26, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 81 [2025-01-09 13:29:05,709 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:05,709 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:29:05,709 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:29:05,709 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:29:05,718 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,718 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,720 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,741 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:29:05,742 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,742 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,748 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,751 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,753 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,754 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,754 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,758 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:29:05,759 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:29:05,759 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:29:05,759 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:29:05,760 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (1/1) ... [2025-01-09 13:29:05,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:05,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:05,796 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:29:05,800 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:29:05,814 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:29:05,814 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:29:05,814 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:29:05,814 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:29:05,814 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:29:05,814 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:29:05,865 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:29:05,866 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:29:06,013 INFO L? ?]: Removed 10 outVars from TransFormulas that were not future-live. [2025-01-09 13:29:06,014 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:29:06,019 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:29:06,020 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:29:06,020 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:06 BoogieIcfgContainer [2025-01-09 13:29:06,020 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:29:06,021 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:29:06,021 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:29:06,024 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:29:06,024 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:29:05" (1/3) ... [2025-01-09 13:29:06,025 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4dbf9baa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:06, skipping insertion in model container [2025-01-09 13:29:06,025 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:05" (2/3) ... [2025-01-09 13:29:06,025 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4dbf9baa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:06, skipping insertion in model container [2025-01-09 13:29:06,025 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:06" (3/3) ... [2025-01-09 13:29:06,026 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-36.i [2025-01-09 13:29:06,035 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:29:06,036 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-36.i that has 2 procedures, 39 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:29:06,065 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:29:06,073 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;@71e9d98f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:29:06,073 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:29:06,075 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 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:29:06,080 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:29:06,080 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:06,080 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:29:06,081 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:06,083 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:06,084 INFO L85 PathProgramCache]: Analyzing trace with hash 639820326, now seen corresponding path program 1 times [2025-01-09 13:29:06,088 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:29:06,089 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277178277] [2025-01-09 13:29:06,089 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:06,089 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:29:06,139 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:06,151 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:06,153 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:06,153 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:06,233 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:29:06,238 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:29:06,238 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277178277] [2025-01-09 13:29:06,238 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [277178277] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:29:06,238 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [637174631] [2025-01-09 13:29:06,238 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:06,239 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:29:06,239 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:06,242 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:29:06,244 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:29:06,301 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:06,338 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:06,338 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:06,339 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:06,340 INFO L256 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:29:06,347 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:29:06,363 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:29:06,365 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:29:06,365 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [637174631] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:29:06,365 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 13:29:06,365 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 13:29:06,367 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [336634977] [2025-01-09 13:29:06,367 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:29:06,369 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:29:06,370 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:29:06,383 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:29:06,383 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:29:06,385 INFO L87 Difference]: Start difference. First operand has 39 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 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 12.0) internal successors, (24), 2 states have internal predecessors, (24), 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:29:06,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:29:06,399 INFO L93 Difference]: Finished difference Result 72 states and 112 transitions. [2025-01-09 13:29:06,400 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:29:06,400 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 12.0) internal successors, (24), 2 states have internal predecessors, (24), 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 64 [2025-01-09 13:29:06,401 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:29:06,405 INFO L225 Difference]: With dead ends: 72 [2025-01-09 13:29:06,405 INFO L226 Difference]: Without dead ends: 36 [2025-01-09 13:29:06,408 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 65 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:29:06,410 INFO L435 NwaCegarLoop]: 49 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, 49 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:29:06,410 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:29:06,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2025-01-09 13:29:06,432 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2025-01-09 13:29:06,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 25 states have (on average 1.24) internal successors, (31), 25 states have internal predecessors, (31), 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:29:06,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 49 transitions. [2025-01-09 13:29:06,436 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 49 transitions. Word has length 64 [2025-01-09 13:29:06,437 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:29:06,437 INFO L471 AbstractCegarLoop]: Abstraction has 36 states and 49 transitions. [2025-01-09 13:29:06,437 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 12.0) internal successors, (24), 2 states have internal predecessors, (24), 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:29:06,437 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 49 transitions. [2025-01-09 13:29:06,438 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:29:06,439 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:06,439 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:29:06,449 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:29:06,643 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:29:06,644 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:06,646 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:06,646 INFO L85 PathProgramCache]: Analyzing trace with hash -1893534176, now seen corresponding path program 1 times [2025-01-09 13:29:06,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:29:06,646 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174746586] [2025-01-09 13:29:06,646 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:06,646 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:29:06,672 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:06,727 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:06,727 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:06,727 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:29:06,728 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:29:06,733 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:06,777 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:06,777 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:06,777 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:29:06,799 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:29:06,802 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:29:06,803 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:29:06,805 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 13:29:06,812 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 13:29:06,860 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:29:06,862 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:29:06 BoogieIcfgContainer [2025-01-09 13:29:06,862 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:29:06,863 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:29:06,863 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:29:06,863 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:29:06,863 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:06" (3/4) ... [2025-01-09 13:29:06,865 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:29:06,865 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:29:06,866 INFO L158 Benchmark]: Toolchain (without parser) took 1380.33ms. Allocated memory is still 142.6MB. Free memory was 106.1MB in the beginning and 102.8MB in the end (delta: 3.3MB). Peak memory consumption was 4.8MB. Max. memory is 16.1GB. [2025-01-09 13:29:06,866 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:06,866 INFO L158 Benchmark]: CACSL2BoogieTranslator took 187.87ms. Allocated memory is still 142.6MB. Free memory was 106.1MB in the beginning and 93.6MB in the end (delta: 12.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:29:06,866 INFO L158 Benchmark]: Boogie Procedure Inliner took 33.75ms. Allocated memory is still 142.6MB. Free memory was 93.6MB in the beginning and 91.9MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:29:06,866 INFO L158 Benchmark]: Boogie Preprocessor took 49.06ms. Allocated memory is still 142.6MB. Free memory was 91.9MB in the beginning and 90.0MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:06,866 INFO L158 Benchmark]: RCFGBuilder took 261.11ms. Allocated memory is still 142.6MB. Free memory was 90.0MB in the beginning and 76.9MB in the end (delta: 13.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:29:06,867 INFO L158 Benchmark]: TraceAbstraction took 841.04ms. Allocated memory is still 142.6MB. Free memory was 76.0MB in the beginning and 102.9MB in the end (delta: -26.8MB). Peak memory consumption was 55.1MB. Max. memory is 16.1GB. [2025-01-09 13:29:06,867 INFO L158 Benchmark]: Witness Printer took 2.39ms. Allocated memory is still 142.6MB. Free memory was 102.9MB in the beginning and 102.8MB in the end (delta: 41.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:06,868 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.20ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 187.87ms. Allocated memory is still 142.6MB. Free memory was 106.1MB in the beginning and 93.6MB in the end (delta: 12.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 33.75ms. Allocated memory is still 142.6MB. Free memory was 93.6MB in the beginning and 91.9MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 49.06ms. Allocated memory is still 142.6MB. Free memory was 91.9MB in the beginning and 90.0MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 261.11ms. Allocated memory is still 142.6MB. Free memory was 90.0MB in the beginning and 76.9MB in the end (delta: 13.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 841.04ms. Allocated memory is still 142.6MB. Free memory was 76.0MB in the beginning and 102.9MB in the end (delta: -26.8MB). Peak memory consumption was 55.1MB. Max. memory is 16.1GB. * Witness Printer took 2.39ms. Allocated memory is still 142.6MB. Free memory was 102.9MB in the beginning and 102.8MB in the end (delta: 41.6kB). 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 61, overapproximation of someBinaryFLOATComparisonOperation at line 68, overapproximation of someBinaryFLOATComparisonOperation at line 63, overapproximation of someBinaryFLOATComparisonOperation at line 67, overapproximation of someBinaryDOUBLEComparisonOperation at line 38, overapproximation of someBinaryDOUBLEComparisonOperation at line 41, overapproximation of someBinaryDOUBLEComparisonOperation at line 65, overapproximation of someBinaryDOUBLEComparisonOperation at line 77. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned long int var_1_1 = 1; [L23] unsigned char var_1_4 = 0; [L24] float var_1_6 = 2.375; [L25] float var_1_7 = 10.8; [L26] double var_1_9 = 9.6; [L27] double var_1_12 = 128.5; [L28] unsigned char var_1_13 = 128; [L29] float var_1_14 = 8.5; [L30] unsigned char var_1_15 = 128; [L31] unsigned char last_1_var_1_13 = 128; VAL [isInitial=0, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=0, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L81] isInitial = 1 [L82] FCALL initially() [L84] CALL updateLastVariables() [L74] last_1_var_1_13 = var_1_13 VAL [isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=0, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L84] RET updateLastVariables() [L85] CALL updateVariables() [L57] var_1_4 = __VERIFIER_nondet_uchar() [L58] CALL assume_abort_if_not(var_1_4 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L58] RET assume_abort_if_not(var_1_4 >= 0) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L59] CALL assume_abort_if_not(var_1_4 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L59] RET assume_abort_if_not(var_1_4 <= 1) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_6=19/8, var_1_7=54/5, var_1_9=48/5] [L60] var_1_6 = __VERIFIER_nondet_float() [L61] CALL assume_abort_if_not((var_1_6 >= 0.0F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854776000e+12F && var_1_6 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_7=54/5, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_7=54/5, var_1_9=48/5] [L61] RET assume_abort_if_not((var_1_6 >= 0.0F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854776000e+12F && var_1_6 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_7=54/5, var_1_9=48/5] [L62] var_1_7 = __VERIFIER_nondet_float() [L63] CALL assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L63] RET assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=257/2, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L64] var_1_12 = __VERIFIER_nondet_double() [L65] CALL assume_abort_if_not((var_1_12 >= -922337.2036854765600e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L65] RET assume_abort_if_not((var_1_12 >= -922337.2036854765600e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_14=17/2, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L66] var_1_14 = __VERIFIER_nondet_float() [L67] CALL assume_abort_if_not((var_1_14 >= -922337.2036854776000e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L67] RET assume_abort_if_not((var_1_14 >= -922337.2036854776000e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L68] CALL assume_abort_if_not(var_1_14 != 0.0F) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L68] RET assume_abort_if_not(var_1_14 != 0.0F) VAL [isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=128, var_1_1=1, var_1_4=1, var_1_9=48/5] [L69] var_1_15 = __VERIFIER_nondet_uchar() [L70] CALL assume_abort_if_not(var_1_15 >= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L70] RET assume_abort_if_not(var_1_15 >= 127) VAL [isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L71] CALL assume_abort_if_not(var_1_15 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L71] RET assume_abort_if_not(var_1_15 <= 254) VAL [isInitial=1, last_1_var_1_13=128, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=48/5] [L85] RET updateVariables() [L86] CALL step() [L35] COND TRUE ((((last_1_var_1_13) > (last_1_var_1_13)) ? (last_1_var_1_13) : (last_1_var_1_13))) < (last_1_var_1_13 + last_1_var_1_13) [L36] var_1_9 = var_1_12 VAL [isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=128, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=254] [L38] COND TRUE var_1_9 <= (16.2f / var_1_14) [L39] var_1_13 = (var_1_15 - 5) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=254] [L41] unsigned char stepLocal_0 = var_1_9 > var_1_9; VAL [isInitial=1, last_1_var_1_13=128, stepLocal_0=0, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=1, var_1_4=1, var_1_9=254] [L42] COND FALSE !(stepLocal_0 && var_1_4) [L53] var_1_1 = var_1_13 VAL [isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=249, var_1_4=1, var_1_9=254] [L86] RET step() [L87] CALL, EXPR property() [L77-L78] return ((((var_1_9 > var_1_9) && var_1_4) ? ((((((var_1_9) > ((- var_1_9))) ? (var_1_9) : ((- var_1_9)))) != var_1_9) ? ((! (var_1_9 >= (var_1_6 - var_1_7))) ? (var_1_1 == ((unsigned long int) var_1_13)) : (var_1_1 == ((unsigned long int) var_1_13))) : (var_1_1 == ((unsigned long int) var_1_13))) : (var_1_1 == ((unsigned long int) var_1_13))) && ((((((last_1_var_1_13) > (last_1_var_1_13)) ? (last_1_var_1_13) : (last_1_var_1_13))) < (last_1_var_1_13 + last_1_var_1_13)) ? (var_1_9 == ((double) var_1_12)) : 1)) && ((var_1_9 <= (16.2f / var_1_14)) ? (var_1_13 == ((unsigned char) (var_1_15 - 5))) : 1) ; VAL [\result=0, isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=249, var_1_4=1, var_1_9=254] [L87] RET, EXPR property() [L87] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=249, var_1_4=1, var_1_9=254] [L19] reach_error() VAL [isInitial=1, last_1_var_1_13=128, var_1_12=254, var_1_13=249, var_1_15=-2, var_1_1=249, var_1_4=1, var_1_9=254] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 39 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, 49 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, 49 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 65 GetRequests, 65 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=39occurred 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, 192 NumberOfCodeBlocks, 192 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 126 ConstructedInterpolants, 0 QuantifiedInterpolants, 126 SizeOfPredicates, 0 NumberOfNonLiveVariables, 160 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:29:06,885 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-while_file-36.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 0106173d0264f3b7073aa037c767f5a06a37b054d6eaa32bc9517002adc60cc2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:29:09,000 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:29:09,060 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:29:09,067 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:29:09,067 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:29:09,111 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:29:09,115 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:29:09,115 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:29:09,115 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:29:09,115 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:29:09,115 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:29:09,115 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:29:09,116 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:29:09,116 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:29:09,116 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:29:09,116 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:09,117 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:09,117 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:29:09,117 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:29:09,117 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 -> 0106173d0264f3b7073aa037c767f5a06a37b054d6eaa32bc9517002adc60cc2 [2025-01-09 13:29:09,380 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:29:09,398 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:29:09,400 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:29:09,401 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:29:09,403 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:29:09,404 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-36.i [2025-01-09 13:29:10,626 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a172f44bf/b29ebdf9b11d494aaa88ecd9131b38ef/FLAG95f7ccf8d [2025-01-09 13:29:10,855 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:29:10,855 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-36.i [2025-01-09 13:29:10,862 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a172f44bf/b29ebdf9b11d494aaa88ecd9131b38ef/FLAG95f7ccf8d [2025-01-09 13:29:11,219 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a172f44bf/b29ebdf9b11d494aaa88ecd9131b38ef [2025-01-09 13:29:11,222 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:29:11,223 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:29:11,224 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:11,224 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:29:11,228 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:29:11,228 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,229 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@44f1aceb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11, skipping insertion in model container [2025-01-09 13:29:11,229 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,239 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:29:11,318 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-36.i[915,928] [2025-01-09 13:29:11,338 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:11,347 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:29:11,355 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-36.i[915,928] [2025-01-09 13:29:11,365 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:11,376 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:29:11,377 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11 WrapperNode [2025-01-09 13:29:11,377 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:11,378 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:11,378 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:29:11,378 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:29:11,387 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:29:11" (1/1) ... [2025-01-09 13:29:11,403 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:29:11" (1/1) ... [2025-01-09 13:29:11,433 INFO L138 Inliner]: procedures = 27, calls = 22, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 81 [2025-01-09 13:29:11,440 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:11,441 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:29:11,441 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:29:11,441 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:29:11,451 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,452 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,454 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,463 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:29:11,463 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,466 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,471 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,472 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,475 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,476 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,476 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,478 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:29:11,478 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:29:11,478 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:29:11,479 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:29:11,479 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (1/1) ... [2025-01-09 13:29:11,484 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:11,495 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:11,505 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:29:11,510 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:29:11,531 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:29:11,533 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:29:11,534 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:29:11,534 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:29:11,534 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:29:11,534 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:29:11,600 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:29:11,602 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:29:15,009 INFO L? ?]: Removed 10 outVars from TransFormulas that were not future-live. [2025-01-09 13:29:15,009 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:29:15,015 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:29:15,015 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:29:15,016 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:15 BoogieIcfgContainer [2025-01-09 13:29:15,016 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:29:15,017 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:29:15,017 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:29:15,020 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:29:15,021 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:29:11" (1/3) ... [2025-01-09 13:29:15,021 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e5e36ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:15, skipping insertion in model container [2025-01-09 13:29:15,021 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:11" (2/3) ... [2025-01-09 13:29:15,022 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e5e36ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:15, skipping insertion in model container [2025-01-09 13:29:15,022 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:15" (3/3) ... [2025-01-09 13:29:15,022 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-36.i [2025-01-09 13:29:15,032 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:29:15,033 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-36.i that has 2 procedures, 39 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:29:15,073 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:29:15,083 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;@7da4f6a5, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:29:15,084 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:29:15,087 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 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:29:15,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:29:15,093 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:15,093 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:29:15,093 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:15,097 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:15,097 INFO L85 PathProgramCache]: Analyzing trace with hash 639820326, now seen corresponding path program 1 times [2025-01-09 13:29:15,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:29:15,107 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [599788959] [2025-01-09 13:29:15,107 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:15,107 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:29:15,108 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:29:15,109 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:29:15,112 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:29:15,151 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:15,348 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:15,349 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:15,349 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:15,358 INFO L256 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:29:15,369 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:29:15,406 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 44 proven. 0 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2025-01-09 13:29:15,407 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:29:15,407 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:29:15,407 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [599788959] [2025-01-09 13:29:15,407 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [599788959] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:29:15,407 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:29:15,407 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 13:29:15,408 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1525743000] [2025-01-09 13:29:15,409 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:29:15,412 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:29:15,413 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:29:15,425 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:29:15,425 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:29:15,427 INFO L87 Difference]: Start difference. First operand has 39 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 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:29:15,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:29:15,438 INFO L93 Difference]: Finished difference Result 72 states and 112 transitions. [2025-01-09 13:29:15,439 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:29:15,440 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:29:15,440 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:29:15,443 INFO L225 Difference]: With dead ends: 72 [2025-01-09 13:29:15,443 INFO L226 Difference]: Without dead ends: 36 [2025-01-09 13:29:15,445 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:29:15,448 INFO L435 NwaCegarLoop]: 49 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, 49 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:29:15,449 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:29:15,456 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2025-01-09 13:29:15,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2025-01-09 13:29:15,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 25 states have (on average 1.24) internal successors, (31), 25 states have internal predecessors, (31), 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:29:15,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 49 transitions. [2025-01-09 13:29:15,469 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 49 transitions. Word has length 64 [2025-01-09 13:29:15,469 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:29:15,469 INFO L471 AbstractCegarLoop]: Abstraction has 36 states and 49 transitions. [2025-01-09 13:29:15,470 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:29:15,470 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 49 transitions. [2025-01-09 13:29:15,471 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2025-01-09 13:29:15,471 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:15,471 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:29:15,480 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:29:15,676 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:29:15,676 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:15,677 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:15,677 INFO L85 PathProgramCache]: Analyzing trace with hash -1893534176, now seen corresponding path program 1 times [2025-01-09 13:29:15,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:29:15,678 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1638490199] [2025-01-09 13:29:15,678 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:15,678 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:29:15,678 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:29:15,680 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:29:15,682 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:29:15,710 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-01-09 13:29:15,917 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-01-09 13:29:15,918 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:15,918 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:15,923 INFO L256 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-09 13:29:15,928 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:29:51,947 WARN L286 SmtUtils]: Spent 10.15s on a formula simplification that was a NOOP. DAG size: 35 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2025-01-09 13:30:16,707 WARN L286 SmtUtils]: Spent 5.01s on a formula simplification that was a NOOP. DAG size: 6 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:30:43,057 WARN L286 SmtUtils]: Spent 7.99s on a formula simplification that was a NOOP. DAG size: 38 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)