./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.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_operatoramount_amount25_file-50.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash fb6084b1d47e624872609ebdc1d7596105f0fe52752c1031b16d65d48dd2a5c7 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 14:36:19,224 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 14:36:19,295 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 14:36:19,305 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 14:36:19,305 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 14:36:19,331 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 14:36:19,332 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 14:36:19,332 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 14:36:19,333 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 14:36:19,333 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 14:36:19,334 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 14:36:19,334 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 14:36:19,334 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 14:36:19,334 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 14:36:19,335 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 14:36:19,335 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 14:36:19,335 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 14:36:19,335 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 14:36:19,335 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 14:36:19,335 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 14:36:19,336 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 14:36:19,336 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 14:36:19,337 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 14:36:19,337 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 14:36:19,337 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:19,337 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 14:36:19,337 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 14:36:19,337 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:19,338 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 14:36:19,338 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 14:36:19,339 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 14:36:19,339 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 14:36:19,339 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 14:36:19,339 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 14:36:19,339 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 -> fb6084b1d47e624872609ebdc1d7596105f0fe52752c1031b16d65d48dd2a5c7 [2025-01-09 14:36:19,592 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 14:36:19,599 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 14:36:19,602 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 14:36:19,603 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 14:36:19,603 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 14:36:19,604 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:20,913 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/653c453f6/121d5f4edec94237aa369c3623f1071a/FLAG4d7beea4f [2025-01-09 14:36:21,210 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 14:36:21,215 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:21,225 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/653c453f6/121d5f4edec94237aa369c3623f1071a/FLAG4d7beea4f [2025-01-09 14:36:21,475 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/653c453f6/121d5f4edec94237aa369c3623f1071a [2025-01-09 14:36:21,477 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 14:36:21,478 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 14:36:21,479 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 14:36:21,479 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 14:36:21,482 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 14:36:21,482 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,482 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72e8ab34 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21, skipping insertion in model container [2025-01-09 14:36:21,483 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,499 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 14:36:21,627 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_operatoramount_amount25_file-50.i[915,928] [2025-01-09 14:36:21,673 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 14:36:21,683 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 14:36:21,693 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_operatoramount_amount25_file-50.i[915,928] [2025-01-09 14:36:21,720 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 14:36:21,738 INFO L204 MainTranslator]: Completed translation [2025-01-09 14:36:21,739 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21 WrapperNode [2025-01-09 14:36:21,740 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 14:36:21,741 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 14:36:21,741 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 14:36:21,741 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 14:36:21,746 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,751 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,768 INFO L138 Inliner]: procedures = 26, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 113 [2025-01-09 14:36:21,768 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 14:36:21,769 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 14:36:21,769 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 14:36:21,769 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 14:36:21,775 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,775 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,777 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,786 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 14:36:21,787 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,787 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,791 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,791 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,794 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,794 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,795 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,797 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 14:36:21,797 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 14:36:21,797 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 14:36:21,797 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 14:36:21,798 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (1/1) ... [2025-01-09 14:36:21,802 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:21,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 14:36:21,826 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 14:36:21,828 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 14:36:21,843 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 14:36:21,843 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 14:36:21,844 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 14:36:21,844 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 14:36:21,844 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 14:36:21,844 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 14:36:21,900 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 14:36:21,901 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 14:36:22,065 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-01-09 14:36:22,065 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 14:36:22,073 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 14:36:22,073 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 14:36:22,074 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 02:36:22 BoogieIcfgContainer [2025-01-09 14:36:22,074 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 14:36:22,076 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 14:36:22,076 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 14:36:22,080 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 14:36:22,080 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 02:36:21" (1/3) ... [2025-01-09 14:36:22,080 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@138f93de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 02:36:22, skipping insertion in model container [2025-01-09 14:36:22,080 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:21" (2/3) ... [2025-01-09 14:36:22,081 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@138f93de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 02:36:22, skipping insertion in model container [2025-01-09 14:36:22,081 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 02:36:22" (3/3) ... [2025-01-09 14:36:22,082 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:22,094 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 14:36:22,095 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_operatoramount_amount25_file-50.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 14:36:22,148 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 14:36:22,158 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;@f886350, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 14:36:22,159 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 14:36:22,162 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:22,170 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:22,170 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:22,171 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:22,171 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:22,176 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:22,176 INFO L85 PathProgramCache]: Analyzing trace with hash -46504301, now seen corresponding path program 1 times [2025-01-09 14:36:22,183 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 14:36:22,184 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1051847486] [2025-01-09 14:36:22,184 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:22,185 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 14:36:22,259 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:22,280 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:22,280 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:22,280 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:22,432 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-01-09 14:36:22,433 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 14:36:22,433 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1051847486] [2025-01-09 14:36:22,433 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1051847486] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 14:36:22,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [668392216] [2025-01-09 14:36:22,434 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:22,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 14:36:22,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 14:36:22,439 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 14:36:22,440 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 14:36:22,518 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:22,590 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:22,591 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:22,591 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:22,594 INFO L256 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 14:36:22,602 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 14:36:22,627 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-01-09 14:36:22,629 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 14:36:22,629 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [668392216] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 14:36:22,629 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 14:36:22,630 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 14:36:22,631 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [844719766] [2025-01-09 14:36:22,632 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 14:36:22,635 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 14:36:22,636 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 14:36:22,652 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 14:36:22,654 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 14:36:22,656 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-01-09 14:36:22,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 14:36:22,686 INFO L93 Difference]: Finished difference Result 98 states and 161 transitions. [2025-01-09 14:36:22,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 14:36:22,688 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) Word has length 105 [2025-01-09 14:36:22,688 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 14:36:22,693 INFO L225 Difference]: With dead ends: 98 [2025-01-09 14:36:22,693 INFO L226 Difference]: Without dead ends: 49 [2025-01-09 14:36:22,696 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 106 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 14:36:22,698 INFO L435 NwaCegarLoop]: 70 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-01-09 14:36:22,700 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 14:36:22,710 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-01-09 14:36:22,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-01-09 14:36:22,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:22,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 70 transitions. [2025-01-09 14:36:22,727 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 70 transitions. Word has length 105 [2025-01-09 14:36:22,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 14:36:22,727 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 70 transitions. [2025-01-09 14:36:22,728 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 15.0) internal successors, (30), 2 states have internal predecessors, (30), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-01-09 14:36:22,728 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 70 transitions. [2025-01-09 14:36:22,731 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:22,731 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:22,731 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:22,737 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 14:36:22,932 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 14:36:22,932 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:22,933 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:22,933 INFO L85 PathProgramCache]: Analyzing trace with hash -1698937205, now seen corresponding path program 1 times [2025-01-09 14:36:22,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 14:36:22,933 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [833541506] [2025-01-09 14:36:22,933 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:22,933 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 14:36:22,959 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:23,050 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:23,050 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:23,050 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:23,551 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-01-09 14:36:23,551 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 14:36:23,551 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [833541506] [2025-01-09 14:36:23,551 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [833541506] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 14:36:23,551 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [513752863] [2025-01-09 14:36:23,551 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:23,551 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 14:36:23,551 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 14:36:23,555 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-09 14:36:23,556 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-01-09 14:36:23,621 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:23,705 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:23,705 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:23,705 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:23,706 INFO L256 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-09 14:36:23,710 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 14:36:23,905 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 253 proven. 24 refuted. 0 times theorem prover too weak. 203 trivial. 0 not checked. [2025-01-09 14:36:23,905 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 14:36:24,107 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-01-09 14:36:24,107 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [513752863] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 14:36:24,107 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-09 14:36:24,107 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 9 [2025-01-09 14:36:24,107 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1415536101] [2025-01-09 14:36:24,107 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-09 14:36:24,108 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2025-01-09 14:36:24,108 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 14:36:24,109 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-01-09 14:36:24,109 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=47, Unknown=0, NotChecked=0, Total=72 [2025-01-09 14:36:24,112 INFO L87 Difference]: Start difference. First operand 49 states and 70 transitions. Second operand has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-01-09 14:36:24,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 14:36:24,492 INFO L93 Difference]: Finished difference Result 157 states and 218 transitions. [2025-01-09 14:36:24,492 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2025-01-09 14:36:24,493 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) Word has length 105 [2025-01-09 14:36:24,493 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 14:36:24,495 INFO L225 Difference]: With dead ends: 157 [2025-01-09 14:36:24,497 INFO L226 Difference]: Without dead ends: 111 [2025-01-09 14:36:24,498 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 225 GetRequests, 206 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=112, Invalid=230, Unknown=0, NotChecked=0, Total=342 [2025-01-09 14:36:24,499 INFO L435 NwaCegarLoop]: 81 mSDtfsCounter, 126 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 221 SdHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2025-01-09 14:36:24,500 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [148 Valid, 221 Invalid, 260 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 225 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2025-01-09 14:36:24,501 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2025-01-09 14:36:24,515 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 56. [2025-01-09 14:36:24,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 37 states have internal predecessors, (45), 16 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:24,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 77 transitions. [2025-01-09 14:36:24,517 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 77 transitions. Word has length 105 [2025-01-09 14:36:24,518 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 14:36:24,518 INFO L471 AbstractCegarLoop]: Abstraction has 56 states and 77 transitions. [2025-01-09 14:36:24,518 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-01-09 14:36:24,518 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 77 transitions. [2025-01-09 14:36:24,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:24,520 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:24,520 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:24,529 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2025-01-09 14:36:24,720 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,3 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 14:36:24,721 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:24,721 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:24,721 INFO L85 PathProgramCache]: Analyzing trace with hash 76070157, now seen corresponding path program 1 times [2025-01-09 14:36:24,722 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 14:36:24,722 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1753713451] [2025-01-09 14:36:24,722 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:24,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 14:36:24,734 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:24,795 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:24,795 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:24,795 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 14:36:24,795 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 14:36:24,800 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:24,847 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:24,848 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:24,848 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 14:36:24,884 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 14:36:24,884 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 14:36:24,885 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 14:36:24,888 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 14:36:24,890 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-01-09 14:36:24,959 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 14:36:24,962 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 02:36:24 BoogieIcfgContainer [2025-01-09 14:36:24,962 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 14:36:24,963 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 14:36:24,963 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 14:36:24,963 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 14:36:24,964 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 02:36:22" (3/4) ... [2025-01-09 14:36:24,966 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 14:36:24,966 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 14:36:24,967 INFO L158 Benchmark]: Toolchain (without parser) took 3489.13ms. Allocated memory is still 167.8MB. Free memory was 122.4MB in the beginning and 69.3MB in the end (delta: 53.2MB). Peak memory consumption was 50.3MB. Max. memory is 16.1GB. [2025-01-09 14:36:24,967 INFO L158 Benchmark]: CDTParser took 0.23ms. Allocated memory is still 201.3MB. Free memory is still 119.6MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 14:36:24,968 INFO L158 Benchmark]: CACSL2BoogieTranslator took 262.02ms. Allocated memory is still 167.8MB. Free memory was 122.4MB in the beginning and 110.0MB in the end (delta: 12.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 14:36:24,968 INFO L158 Benchmark]: Boogie Procedure Inliner took 26.94ms. Allocated memory is still 167.8MB. Free memory was 110.0MB in the beginning and 108.2MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 14:36:24,969 INFO L158 Benchmark]: Boogie Preprocessor took 28.06ms. Allocated memory is still 167.8MB. Free memory was 108.2MB in the beginning and 106.3MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 14:36:24,969 INFO L158 Benchmark]: RCFGBuilder took 276.64ms. Allocated memory is still 167.8MB. Free memory was 106.0MB in the beginning and 90.8MB in the end (delta: 15.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 14:36:24,969 INFO L158 Benchmark]: TraceAbstraction took 2886.78ms. Allocated memory is still 167.8MB. Free memory was 90.2MB in the beginning and 69.3MB in the end (delta: 20.9MB). Peak memory consumption was 16.7MB. Max. memory is 16.1GB. [2025-01-09 14:36:24,969 INFO L158 Benchmark]: Witness Printer took 3.50ms. Allocated memory is still 167.8MB. Free memory was 69.3MB in the beginning and 69.3MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 14:36:24,970 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.23ms. Allocated memory is still 201.3MB. Free memory is still 119.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 262.02ms. Allocated memory is still 167.8MB. Free memory was 122.4MB in the beginning and 110.0MB in the end (delta: 12.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 26.94ms. Allocated memory is still 167.8MB. Free memory was 110.0MB in the beginning and 108.2MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 28.06ms. Allocated memory is still 167.8MB. Free memory was 108.2MB in the beginning and 106.3MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 276.64ms. Allocated memory is still 167.8MB. Free memory was 106.0MB in the beginning and 90.8MB in the end (delta: 15.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 2886.78ms. Allocated memory is still 167.8MB. Free memory was 90.2MB in the beginning and 69.3MB in the end (delta: 20.9MB). Peak memory consumption was 16.7MB. Max. memory is 16.1GB. * Witness Printer took 3.50ms. Allocated memory is still 167.8MB. Free memory was 69.3MB in the beginning and 69.3MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryDOUBLEComparisonOperation at line 49, overapproximation of someBinaryDOUBLEComparisonOperation at line 70, overapproximation of someBinaryDOUBLEComparisonOperation at line 72, overapproximation of someBinaryDOUBLEComparisonOperation at line 74, overapproximation of someBinaryDOUBLEComparisonOperation at line 40, overapproximation of someBinaryDOUBLEComparisonOperation at line 76, overapproximation of someBinaryDOUBLEComparisonOperation at line 100. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 1; [L23] double var_1_2 = 8.875; [L24] double var_1_3 = 63.5; [L25] double var_1_4 = 16.6; [L26] double var_1_5 = 127.8; [L27] unsigned char var_1_6 = 0; [L28] unsigned char var_1_7 = 0; [L29] unsigned char var_1_8 = 1; [L30] signed short int var_1_9 = 256; [L31] signed short int var_1_10 = 10000; [L32] signed short int var_1_11 = 4; [L33] signed short int var_1_12 = -32; [L34] signed long int var_1_13 = 32; [L35] signed short int var_1_14 = 32; [L36] signed long int last_1_var_1_13 = 32; VAL [isInitial=0, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_2=71/8, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L104] isInitial = 1 [L105] FCALL initially() [L107] CALL updateLastVariables() [L97] last_1_var_1_13 = var_1_13 VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_2=71/8, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L107] RET updateLastVariables() [L108] CALL updateVariables() [L69] var_1_2 = __VERIFIER_nondet_double() [L70] CALL assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L70] RET assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_3=127/2, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L71] var_1_3 = __VERIFIER_nondet_double() [L72] CALL assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L72] RET assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_4=83/5, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L73] var_1_4 = __VERIFIER_nondet_double() [L74] CALL assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L74] RET assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_5=639/5, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L75] var_1_5 = __VERIFIER_nondet_double() [L76] CALL assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L76] RET assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L77] var_1_6 = __VERIFIER_nondet_uchar() [L78] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L78] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_7=0, var_1_8=1, var_1_9=256] [L79] CALL assume_abort_if_not(var_1_6 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L79] RET assume_abort_if_not(var_1_6 <= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L80] var_1_7 = __VERIFIER_nondet_uchar() [L81] CALL assume_abort_if_not(var_1_7 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L81] RET assume_abort_if_not(var_1_7 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_8=1, var_1_9=256] [L82] CALL assume_abort_if_not(var_1_7 <= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L82] RET assume_abort_if_not(var_1_7 <= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=1, var_1_9=256] [L83] var_1_8 = __VERIFIER_nondet_uchar() [L84] CALL assume_abort_if_not(var_1_8 >= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L84] RET assume_abort_if_not(var_1_8 >= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L85] CALL assume_abort_if_not(var_1_8 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L85] RET assume_abort_if_not(var_1_8 <= 1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=10000, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L86] var_1_10 = __VERIFIER_nondet_short() [L87] CALL assume_abort_if_not(var_1_10 >= -1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L87] RET assume_abort_if_not(var_1_10 >= -1) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L88] CALL assume_abort_if_not(var_1_10 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L88] RET assume_abort_if_not(var_1_10 <= 32766) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=4, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L89] var_1_11 = __VERIFIER_nondet_short() [L90] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L90] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L91] CALL assume_abort_if_not(var_1_11 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L91] RET assume_abort_if_not(var_1_11 <= 32766) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=32, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L92] var_1_14 = __VERIFIER_nondet_short() [L93] CALL assume_abort_if_not(var_1_14 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L93] RET assume_abort_if_not(var_1_14 >= 0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L94] CALL assume_abort_if_not(var_1_14 <= 32767) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L94] RET assume_abort_if_not(var_1_14 <= 32767) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=1, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L108] RET updateVariables() [L109] CALL step() [L40] COND FALSE !((((((var_1_2 + var_1_3)) < ((var_1_4 - var_1_5))) ? ((var_1_2 + var_1_3)) : ((var_1_4 - var_1_5)))) != 31.9) [L47] var_1_1 = var_1_7 VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=256] [L49] COND TRUE var_1_2 > var_1_5 [L50] var_1_9 = (var_1_10 - var_1_11) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L52] unsigned char stepLocal_0 = var_1_8; VAL [isInitial=1, last_1_var_1_13=32, stepLocal_0=-255, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L53] COND FALSE !(var_1_1 && stepLocal_0) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L56] signed short int stepLocal_2 = var_1_9; [L57] signed long int stepLocal_1 = var_1_11 - var_1_14; VAL [isInitial=1, last_1_var_1_13=32, stepLocal_1=0, stepLocal_2=32766, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L58] COND TRUE var_1_11 <= stepLocal_2 [L59] var_1_13 = (var_1_10 - var_1_11) VAL [isInitial=1, last_1_var_1_13=32, stepLocal_1=0, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L109] RET step() [L110] CALL, EXPR property() [L100-L101] return (((((((((var_1_2 + var_1_3)) < ((var_1_4 - var_1_5))) ? ((var_1_2 + var_1_3)) : ((var_1_4 - var_1_5)))) != 31.9) ? (var_1_6 ? (var_1_1 == ((unsigned char) var_1_7)) : (var_1_1 == ((unsigned char) var_1_8))) : (var_1_1 == ((unsigned char) var_1_7))) && ((var_1_2 > var_1_5) ? (var_1_9 == ((signed short int) (var_1_10 - var_1_11))) : 1)) && ((var_1_1 && var_1_8) ? (var_1_12 == ((signed short int) (var_1_11 - 1))) : 1)) && ((var_1_11 <= var_1_9) ? (var_1_13 == ((signed long int) (var_1_10 - var_1_11))) : ((last_1_var_1_13 > (var_1_11 - var_1_14)) ? (var_1_13 == ((signed long int) last_1_var_1_13)) : (var_1_13 == ((signed long int) last_1_var_1_13)))) ; VAL [\result=0, isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L110] RET, EXPR property() [L110] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] [L19] reach_error() VAL [isInitial=1, last_1_var_1_13=32, var_1_10=32766, var_1_11=0, var_1_12=-32, var_1_13=32766, var_1_14=0, var_1_1=0, var_1_6=0, var_1_7=0, var_1_8=-255, var_1_9=32766] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 52 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 2.8s, OverallIterations: 3, TraceHistogramMax: 16, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 148 SdHoareTripleChecker+Valid, 0.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 126 mSDsluCounter, 291 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 140 mSDsCounter, 35 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 225 IncrementalHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 35 mSolverCounterUnsat, 151 mSDtfsCounter, 225 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 331 GetRequests, 312 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=56occurred in iteration=2, InterpolantAutomatonStates: 19, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 2 MinimizatonAttempts, 55 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 1.1s InterpolantComputationTime, 525 NumberOfCodeBlocks, 525 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 520 ConstructedInterpolants, 0 QuantifiedInterpolants, 916 SizeOfPredicates, 2 NumberOfNonLiveVariables, 496 ConjunctsInSsa, 9 ConjunctsInUnsatCore, 5 InterpolantComputations, 1 PerfectInterpolantSequences, 2298/2400 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-01-09 14:36:24,992 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash fb6084b1d47e624872609ebdc1d7596105f0fe52752c1031b16d65d48dd2a5c7 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 14:36:27,174 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 14:36:27,279 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-01-09 14:36:27,286 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 14:36:27,286 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 14:36:27,313 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 14:36:27,316 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 14:36:27,316 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 14:36:27,317 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 14:36:27,317 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 14:36:27,318 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 14:36:27,318 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 14:36:27,318 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 14:36:27,318 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 14:36:27,318 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 14:36:27,318 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 14:36:27,319 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 14:36:27,319 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 14:36:27,319 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 14:36:27,319 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 14:36:27,319 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 14:36:27,320 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 14:36:27,321 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 14:36:27,321 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 14:36:27,321 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:27,322 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:27,322 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 14:36:27,322 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 14:36:27,323 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 14:36:27,323 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 -> fb6084b1d47e624872609ebdc1d7596105f0fe52752c1031b16d65d48dd2a5c7 [2025-01-09 14:36:27,621 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 14:36:27,630 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 14:36:27,632 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 14:36:27,633 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 14:36:27,633 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 14:36:27,634 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:29,106 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/786919f18/6e489c95bc2a4d809678c09f5c636fbd/FLAG65ff499f9 [2025-01-09 14:36:29,331 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 14:36:29,332 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:29,340 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/786919f18/6e489c95bc2a4d809678c09f5c636fbd/FLAG65ff499f9 [2025-01-09 14:36:29,677 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/786919f18/6e489c95bc2a4d809678c09f5c636fbd [2025-01-09 14:36:29,683 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 14:36:29,684 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 14:36:29,686 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 14:36:29,686 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 14:36:29,689 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 14:36:29,691 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,691 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@a302bc8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29, skipping insertion in model container [2025-01-09 14:36:29,692 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,706 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 14:36:29,822 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_operatoramount_amount25_file-50.i[915,928] [2025-01-09 14:36:29,854 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 14:36:29,870 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 14:36:29,880 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_operatoramount_amount25_file-50.i[915,928] [2025-01-09 14:36:29,897 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 14:36:29,911 INFO L204 MainTranslator]: Completed translation [2025-01-09 14:36:29,912 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29 WrapperNode [2025-01-09 14:36:29,912 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 14:36:29,914 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 14:36:29,914 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 14:36:29,914 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 14:36:29,921 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,931 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,958 INFO L138 Inliner]: procedures = 27, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 110 [2025-01-09 14:36:29,959 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 14:36:29,959 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 14:36:29,959 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 14:36:29,959 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 14:36:29,968 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,968 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,975 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,989 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 14:36:29,990 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,990 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,996 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:29,997 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:30,003 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:30,005 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:30,006 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:30,008 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 14:36:30,009 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 14:36:30,009 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 14:36:30,009 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 14:36:30,014 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (1/1) ... [2025-01-09 14:36:30,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 14:36:30,032 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 14:36:30,044 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 14:36:30,048 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 14:36:30,070 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 14:36:30,070 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 14:36:30,070 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 14:36:30,070 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 14:36:30,071 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 14:36:30,071 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 14:36:30,144 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 14:36:30,146 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 14:36:31,748 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-01-09 14:36:31,749 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 14:36:31,761 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 14:36:31,761 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 14:36:31,762 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 02:36:31 BoogieIcfgContainer [2025-01-09 14:36:31,762 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 14:36:31,764 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 14:36:31,764 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 14:36:31,769 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 14:36:31,769 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 02:36:29" (1/3) ... [2025-01-09 14:36:31,769 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6c24cacb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 02:36:31, skipping insertion in model container [2025-01-09 14:36:31,770 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 02:36:29" (2/3) ... [2025-01-09 14:36:31,771 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6c24cacb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 02:36:31, skipping insertion in model container [2025-01-09 14:36:31,771 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 02:36:31" (3/3) ... [2025-01-09 14:36:31,773 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_operatoramount_amount25_file-50.i [2025-01-09 14:36:31,784 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 14:36:31,785 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_operatoramount_amount25_file-50.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 14:36:31,824 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 14:36:31,833 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;@375a1f38, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 14:36:31,833 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 14:36:31,838 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:31,845 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:31,845 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:31,846 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:31,846 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:31,871 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:31,873 INFO L85 PathProgramCache]: Analyzing trace with hash -46504301, now seen corresponding path program 1 times [2025-01-09 14:36:31,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 14:36:31,881 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [238162102] [2025-01-09 14:36:31,881 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:31,882 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 14:36:31,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 14:36:31,884 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 14:36:31,887 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 14:36:31,961 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:32,130 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:32,130 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:32,130 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:32,137 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 14:36:32,143 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 14:36:32,179 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 246 proven. 0 refuted. 0 times theorem prover too weak. 234 trivial. 0 not checked. [2025-01-09 14:36:32,179 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 14:36:32,179 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 14:36:32,179 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [238162102] [2025-01-09 14:36:32,180 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [238162102] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 14:36:32,180 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 14:36:32,180 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 14:36:32,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [763382301] [2025-01-09 14:36:32,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 14:36:32,184 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 14:36:32,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 14:36:32,198 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 14:36:32,198 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 14:36:32,200 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.303030303030303) internal successors, (43), 34 states have internal predecessors, (43), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-01-09 14:36:32,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 14:36:32,218 INFO L93 Difference]: Finished difference Result 98 states and 161 transitions. [2025-01-09 14:36:32,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 14:36:32,222 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) Word has length 105 [2025-01-09 14:36:32,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 14:36:32,229 INFO L225 Difference]: With dead ends: 98 [2025-01-09 14:36:32,229 INFO L226 Difference]: Without dead ends: 49 [2025-01-09 14:36:32,232 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 104 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 14:36:32,235 INFO L435 NwaCegarLoop]: 70 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-01-09 14:36:32,237 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 14:36:32,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-01-09 14:36:32,264 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-01-09 14:36:32,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:32,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 70 transitions. [2025-01-09 14:36:32,272 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 70 transitions. Word has length 105 [2025-01-09 14:36:32,273 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 14:36:32,273 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 70 transitions. [2025-01-09 14:36:32,274 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-01-09 14:36:32,274 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 70 transitions. [2025-01-09 14:36:32,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:32,278 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:32,278 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:32,288 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 14:36:32,479 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 14:36:32,479 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:32,480 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:32,480 INFO L85 PathProgramCache]: Analyzing trace with hash -1698937205, now seen corresponding path program 1 times [2025-01-09 14:36:32,481 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 14:36:32,481 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1282853314] [2025-01-09 14:36:32,481 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:32,481 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 14:36:32,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 14:36:32,483 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 14:36:32,484 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 14:36:32,543 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:32,713 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:32,714 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:32,714 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:32,723 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-01-09 14:36:32,730 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 14:36:32,946 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 253 proven. 24 refuted. 0 times theorem prover too weak. 203 trivial. 0 not checked. [2025-01-09 14:36:32,946 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 14:36:33,197 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 21 proven. 24 refuted. 0 times theorem prover too weak. 435 trivial. 0 not checked. [2025-01-09 14:36:33,197 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 14:36:33,198 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1282853314] [2025-01-09 14:36:33,198 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1282853314] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 14:36:33,198 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-01-09 14:36:33,198 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2025-01-09 14:36:33,198 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1660171661] [2025-01-09 14:36:33,198 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-01-09 14:36:33,199 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-01-09 14:36:33,200 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 14:36:33,200 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-01-09 14:36:33,201 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2025-01-09 14:36:33,201 INFO L87 Difference]: Start difference. First operand 49 states and 70 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-01-09 14:36:35,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 14:36:35,756 INFO L93 Difference]: Finished difference Result 157 states and 218 transitions. [2025-01-09 14:36:35,756 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2025-01-09 14:36:35,756 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) Word has length 105 [2025-01-09 14:36:35,757 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 14:36:35,759 INFO L225 Difference]: With dead ends: 157 [2025-01-09 14:36:35,759 INFO L226 Difference]: Without dead ends: 111 [2025-01-09 14:36:35,760 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 220 GetRequests, 202 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=112, Invalid=230, Unknown=0, NotChecked=0, Total=342 [2025-01-09 14:36:35,761 INFO L435 NwaCegarLoop]: 81 mSDtfsCounter, 131 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 221 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 139 SdHoareTripleChecker+Valid, 217 SdHoareTripleChecker+Invalid, 268 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 221 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2025-01-09 14:36:35,761 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [139 Valid, 217 Invalid, 268 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 221 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2025-01-09 14:36:35,762 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2025-01-09 14:36:35,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 56. [2025-01-09 14:36:35,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 37 states have internal predecessors, (45), 16 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-01-09 14:36:35,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 77 transitions. [2025-01-09 14:36:35,778 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 77 transitions. Word has length 105 [2025-01-09 14:36:35,778 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 14:36:35,778 INFO L471 AbstractCegarLoop]: Abstraction has 56 states and 77 transitions. [2025-01-09 14:36:35,778 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 2 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (25), 2 states have call predecessors, (25), 2 states have call successors, (25) [2025-01-09 14:36:35,779 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 77 transitions. [2025-01-09 14:36:35,780 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2025-01-09 14:36:35,780 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 14:36:35,780 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 14:36:35,794 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Ended with exit code 0 [2025-01-09 14:36:35,981 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-01-09 14:36:35,981 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 14:36:35,982 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 14:36:35,982 INFO L85 PathProgramCache]: Analyzing trace with hash 76070157, now seen corresponding path program 1 times [2025-01-09 14:36:35,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 14:36:35,983 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1246940366] [2025-01-09 14:36:35,983 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 14:36:35,983 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 14:36:35,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 14:36:35,987 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-01-09 14:36:35,987 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2025-01-09 14:36:36,027 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 105 statements into 1 equivalence classes. [2025-01-09 14:36:36,239 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 105 of 105 statements. [2025-01-09 14:36:36,240 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 14:36:36,240 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 14:36:36,246 INFO L256 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 20 conjuncts are in the unsatisfiable core [2025-01-09 14:36:36,252 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 14:36:54,661 WARN L286 SmtUtils]: Spent 5.69s on a formula simplification that was a NOOP. DAG size: 30 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2025-01-09 14:37:22,631 WARN L286 SmtUtils]: Spent 9.18s 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)