./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 f542c31fef0cbf1b152079c560a5961cfda40d4d893630cfcc2de70dbcc4c8b6 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 00:50:13,775 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 00:50:13,827 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-04 00:50:13,832 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 00:50:13,833 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 00:50:13,852 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 00:50:13,854 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 00:50:13,854 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 00:50:13,854 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 00:50:13,854 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 00:50:13,855 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 00:50:13,855 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 00:50:13,855 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 00:50:13,855 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 00:50:13,856 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 00:50:13,856 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 00:50:13,857 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 00:50:13,857 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 00:50:13,858 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 00:50:13,858 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 00:50:13,858 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/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 -> f542c31fef0cbf1b152079c560a5961cfda40d4d893630cfcc2de70dbcc4c8b6 [2025-03-04 00:50:14,076 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 00:50:14,083 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 00:50:14,085 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 00:50:14,086 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 00:50:14,086 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 00:50:14,088 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:15,233 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0b241c41/c4a5ca15d45c48b7b2fdd0e43e63021a/FLAGf1c811358 [2025-03-04 00:50:15,471 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 00:50:15,475 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:15,487 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0b241c41/c4a5ca15d45c48b7b2fdd0e43e63021a/FLAGf1c811358 [2025-03-04 00:50:15,798 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0b241c41/c4a5ca15d45c48b7b2fdd0e43e63021a [2025-03-04 00:50:15,799 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 00:50:15,800 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 00:50:15,801 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 00:50:15,801 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 00:50:15,804 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 00:50:15,804 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:15,805 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@cf0269b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15, skipping insertion in model container [2025-03-04 00:50:15,805 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:15,816 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 00:50:15,914 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i[912,925] [2025-03-04 00:50:15,952 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 00:50:15,963 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 00:50:15,974 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i[912,925] [2025-03-04 00:50:15,983 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 00:50:15,994 INFO L204 MainTranslator]: Completed translation [2025-03-04 00:50:15,995 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15 WrapperNode [2025-03-04 00:50:15,995 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 00:50:15,997 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 00:50:15,997 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 00:50:15,997 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 00:50:16,002 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,013 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,032 INFO L138 Inliner]: procedures = 26, calls = 21, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 86 [2025-03-04 00:50:16,032 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 00:50:16,033 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 00:50:16,033 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 00:50:16,033 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 00:50:16,040 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,040 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,041 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,050 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-03-04 00:50:16,051 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,051 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,054 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,055 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,056 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,057 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,058 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 00:50:16,059 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 00:50:16,059 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 00:50:16,059 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 00:50:16,060 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (1/1) ... [2025-03-04 00:50:16,064 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 00:50:16,074 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 00:50:16,087 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-04 00:50:16,093 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-04 00:50:16,106 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 00:50:16,107 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-04 00:50:16,107 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-04 00:50:16,107 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-04 00:50:16,107 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 00:50:16,107 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 00:50:16,154 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 00:50:16,155 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 00:50:16,291 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-03-04 00:50:16,291 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 00:50:16,298 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 00:50:16,298 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 00:50:16,298 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 12:50:16 BoogieIcfgContainer [2025-03-04 00:50:16,298 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 00:50:16,300 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 00:50:16,300 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 00:50:16,303 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 00:50:16,303 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 12:50:15" (1/3) ... [2025-03-04 00:50:16,303 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@865bdcf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 12:50:16, skipping insertion in model container [2025-03-04 00:50:16,303 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:15" (2/3) ... [2025-03-04 00:50:16,303 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@865bdcf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 12:50:16, skipping insertion in model container [2025-03-04 00:50:16,303 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 12:50:16" (3/3) ... [2025-03-04 00:50:16,304 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:16,314 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 00:50:16,315 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-0.i that has 2 procedures, 40 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-04 00:50:16,358 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 00:50:16,367 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;@61d3ab7e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 00:50:16,368 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-04 00:50:16,371 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 29 states have (on average 1.4482758620689655) internal successors, (42), 30 states have internal predecessors, (42), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 00:50:16,375 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2025-03-04 00:50:16,376 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 00:50:16,376 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 00:50:16,376 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 00:50:16,379 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 00:50:16,380 INFO L85 PathProgramCache]: Analyzing trace with hash 273599856, now seen corresponding path program 1 times [2025-03-04 00:50:16,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 00:50:16,384 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1627676967] [2025-03-04 00:50:16,384 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 00:50:16,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 00:50:16,436 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:16,451 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:16,452 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:16,452 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 00:50:16,516 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-04 00:50:16,517 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 00:50:16,517 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1627676967] [2025-03-04 00:50:16,517 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1627676967] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 00:50:16,517 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1982934153] [2025-03-04 00:50:16,517 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 00:50:16,518 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 00:50:16,518 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 00:50:16,528 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 00:50:16,530 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-04 00:50:16,587 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:16,612 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:16,613 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:16,613 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 00:50:16,614 INFO L256 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-04 00:50:16,619 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 00:50:16,634 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-04 00:50:16,634 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 00:50:16,634 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1982934153] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 00:50:16,634 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-04 00:50:16,635 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-04 00:50:16,636 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [717610554] [2025-03-04 00:50:16,637 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 00:50:16,640 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-04 00:50:16,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 00:50:16,652 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-04 00:50:16,652 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-04 00:50:16,653 INFO L87 Difference]: Start difference. First operand has 40 states, 29 states have (on average 1.4482758620689655) internal successors, (42), 30 states have internal predecessors, (42), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 00:50:16,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 00:50:16,664 INFO L93 Difference]: Finished difference Result 73 states and 117 transitions. [2025-03-04 00:50:16,664 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-04 00:50:16,665 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) Word has length 58 [2025-03-04 00:50:16,666 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 00:50:16,670 INFO L225 Difference]: With dead ends: 73 [2025-03-04 00:50:16,670 INFO L226 Difference]: Without dead ends: 36 [2025-03-04 00:50:16,671 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 59 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-03-04 00:50:16,673 INFO L435 NwaCegarLoop]: 49 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-04 00:50:16,673 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-04 00:50:16,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2025-03-04 00:50:16,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2025-03-04 00:50:16,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 00:50:16,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 49 transitions. [2025-03-04 00:50:16,697 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 49 transitions. Word has length 58 [2025-03-04 00:50:16,697 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 00:50:16,697 INFO L471 AbstractCegarLoop]: Abstraction has 36 states and 49 transitions. [2025-03-04 00:50:16,699 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 00:50:16,699 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 49 transitions. [2025-03-04 00:50:16,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2025-03-04 00:50:16,702 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 00:50:16,702 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 00:50:16,711 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-04 00:50:16,903 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-04 00:50:16,904 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 00:50:16,904 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 00:50:16,904 INFO L85 PathProgramCache]: Analyzing trace with hash 887968206, now seen corresponding path program 1 times [2025-03-04 00:50:16,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 00:50:16,904 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2100554741] [2025-03-04 00:50:16,904 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 00:50:16,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 00:50:16,914 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:16,957 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:16,957 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:16,957 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 00:50:16,957 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-04 00:50:16,964 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:16,996 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:16,996 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:16,996 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 00:50:17,018 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-04 00:50:17,019 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-04 00:50:17,020 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-04 00:50:17,021 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-04 00:50:17,023 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-04 00:50:17,069 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-04 00:50:17,074 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.03 12:50:17 BoogieIcfgContainer [2025-03-04 00:50:17,075 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-04 00:50:17,075 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-04 00:50:17,075 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-04 00:50:17,075 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-04 00:50:17,076 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 12:50:16" (3/4) ... [2025-03-04 00:50:17,077 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-04 00:50:17,078 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-04 00:50:17,079 INFO L158 Benchmark]: Toolchain (without parser) took 1278.41ms. Allocated memory is still 167.8MB. Free memory was 122.8MB in the beginning and 51.4MB in the end (delta: 71.4MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. [2025-03-04 00:50:17,079 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 115.3MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 00:50:17,080 INFO L158 Benchmark]: CACSL2BoogieTranslator took 194.95ms. Allocated memory is still 167.8MB. Free memory was 122.1MB in the beginning and 110.3MB in the end (delta: 11.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-04 00:50:17,080 INFO L158 Benchmark]: Boogie Procedure Inliner took 35.56ms. Allocated memory is still 167.8MB. Free memory was 110.3MB in the beginning and 108.6MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-04 00:50:17,080 INFO L158 Benchmark]: Boogie Preprocessor took 25.86ms. Allocated memory is still 167.8MB. Free memory was 108.6MB in the beginning and 106.4MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 00:50:17,081 INFO L158 Benchmark]: IcfgBuilder took 239.23ms. Allocated memory is still 167.8MB. Free memory was 106.4MB in the beginning and 91.8MB in the end (delta: 14.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-04 00:50:17,081 INFO L158 Benchmark]: TraceAbstraction took 775.10ms. Allocated memory is still 167.8MB. Free memory was 91.1MB in the beginning and 51.6MB in the end (delta: 39.5MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-03-04 00:50:17,081 INFO L158 Benchmark]: Witness Printer took 2.86ms. Allocated memory is still 167.8MB. Free memory was 51.6MB in the beginning and 51.4MB in the end (delta: 238.5kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 00:50:17,083 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 115.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 194.95ms. Allocated memory is still 167.8MB. Free memory was 122.1MB in the beginning and 110.3MB in the end (delta: 11.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 35.56ms. Allocated memory is still 167.8MB. Free memory was 110.3MB in the beginning and 108.6MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 25.86ms. Allocated memory is still 167.8MB. Free memory was 108.6MB in the beginning and 106.4MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 239.23ms. Allocated memory is still 167.8MB. Free memory was 106.4MB in the beginning and 91.8MB in the end (delta: 14.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 775.10ms. Allocated memory is still 167.8MB. Free memory was 91.1MB in the beginning and 51.6MB in the end (delta: 39.5MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Witness Printer took 2.86ms. Allocated memory is still 167.8MB. Free memory was 51.6MB in the beginning and 51.4MB in the end (delta: 238.5kB). 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 someBinaryArithmeticDOUBLEoperation at line 48, overapproximation of someBinaryDOUBLEComparisonOperation at line 75, overapproximation of someBinaryDOUBLEComparisonOperation at line 73, overapproximation of someBinaryDOUBLEComparisonOperation at line 52, overapproximation of someBinaryDOUBLEComparisonOperation at line 89. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] double var_1_1 = 25.8; [L23] unsigned char var_1_2 = 1; [L24] double var_1_3 = 128.2; [L25] double var_1_4 = 15.4; [L26] double var_1_5 = 5.25; [L27] unsigned char var_1_9 = 1; [L28] unsigned char var_1_10 = 100; [L29] unsigned char var_1_12 = 1; [L30] unsigned short int var_1_13 = 5; [L31] double last_1_var_1_5 = 5.25; [L32] unsigned char last_1_var_1_10 = 100; [L33] unsigned short int last_1_var_1_13 = 5; VAL [isInitial=0, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=1, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L93] isInitial = 1 [L94] FCALL initially() [L95] COND TRUE 1 [L96] CALL updateLastVariables() [L84] last_1_var_1_5 = var_1_5 [L85] last_1_var_1_10 = var_1_10 [L86] last_1_var_1_13 = var_1_13 VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=1, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L96] RET updateLastVariables() [L97] CALL updateVariables() [L69] var_1_2 = __VERIFIER_nondet_uchar() [L70] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L70] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L71] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L71] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_3=641/5, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L72] var_1_3 = __VERIFIER_nondet_double() [L73] CALL assume_abort_if_not((var_1_3 >= 0.0F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854765600e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L73] RET assume_abort_if_not((var_1_3 >= 0.0F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854765600e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_4=77/5, var_1_5=21/4, var_1_9=1] [L74] var_1_4 = __VERIFIER_nondet_double() [L75] CALL assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854765600e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=1] [L75] RET assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854765600e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=1] [L76] var_1_9 = __VERIFIER_nondet_uchar() [L77] CALL assume_abort_if_not(var_1_9 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4] [L77] RET assume_abort_if_not(var_1_9 >= 0) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4] [L78] CALL assume_abort_if_not(var_1_9 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L78] RET assume_abort_if_not(var_1_9 <= 1) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=1, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L79] var_1_12 = __VERIFIER_nondet_uchar() [L80] CALL assume_abort_if_not(var_1_12 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L80] RET assume_abort_if_not(var_1_12 >= 0) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L81] CALL assume_abort_if_not(var_1_12 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L81] RET assume_abort_if_not(var_1_12 <= 254) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L97] RET updateVariables() [L98] CALL step() [L37] COND FALSE !(\read(var_1_9)) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L42] COND FALSE !((last_1_var_1_13 + last_1_var_1_13) < last_1_var_1_13) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_1=129/5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L47] COND TRUE ! var_1_2 [L48] var_1_1 = (var_1_3 - var_1_4) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_2=0, var_1_5=21/4, var_1_9=0] [L52] COND FALSE !((var_1_3 + (var_1_4 + var_1_1)) != var_1_1) [L65] var_1_5 = var_1_3 VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_2=0, var_1_3=259, var_1_5=259, var_1_9=0] [L98] RET step() [L99] CALL, EXPR property() [L89-L90] return ((((! var_1_2) ? (var_1_1 == ((double) (var_1_3 - var_1_4))) : (var_1_1 == ((double) ((((16.2) < (var_1_3)) ? (16.2) : (var_1_3)))))) && (((var_1_3 + (var_1_4 + var_1_1)) != var_1_1) ? (var_1_2 ? (((- var_1_13) <= var_1_10) ? (var_1_9 ? (var_1_5 == ((double) var_1_4)) : 1) : (var_1_5 == ((double) var_1_3))) : (var_1_5 == ((double) var_1_3))) : (var_1_5 == ((double) var_1_3)))) && (((last_1_var_1_13 + last_1_var_1_13) < last_1_var_1_13) ? ((last_1_var_1_13 > last_1_var_1_13) ? (var_1_10 == ((unsigned char) var_1_12)) : 1) : 1)) && (var_1_9 ? (((var_1_4 * (var_1_3 - 5.3)) <= last_1_var_1_5) ? (var_1_13 == ((unsigned short int) last_1_var_1_10)) : 1) : 1) ; VAL [\result=0, isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_2=0, var_1_3=259, var_1_5=259, var_1_9=0] [L99] RET, EXPR property() [L99] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_2=0, var_1_3=259, var_1_5=259, var_1_9=0] [L19] reach_error() VAL [isInitial=1, last_1_var_1_10=100, last_1_var_1_13=5, last_1_var_1_5=21/4, var_1_10=100, var_1_12=254, var_1_13=5, var_1_2=0, var_1_3=259, var_1_5=259, var_1_9=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.7s, OverallIterations: 2, TraceHistogramMax: 8, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 49 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 49 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 59 GetRequests, 59 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=40occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 174 NumberOfCodeBlocks, 174 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 114 ConstructedInterpolants, 0 QuantifiedInterpolants, 114 SizeOfPredicates, 0 NumberOfNonLiveVariables, 155 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 210/224 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-03-04 00:50:17,101 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 f542c31fef0cbf1b152079c560a5961cfda40d4d893630cfcc2de70dbcc4c8b6 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 00:50:18,912 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 00:50:18,975 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-04 00:50:18,983 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 00:50:18,983 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 00:50:19,006 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 00:50:19,007 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 00:50:19,007 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 00:50:19,007 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 00:50:19,007 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 00:50:19,007 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 00:50:19,007 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 00:50:19,008 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 00:50:19,008 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-04 00:50:19,008 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 00:50:19,009 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 00:50:19,009 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 00:50:19,009 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 00:50:19,010 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 00:50:19,010 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/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 -> f542c31fef0cbf1b152079c560a5961cfda40d4d893630cfcc2de70dbcc4c8b6 [2025-03-04 00:50:19,251 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 00:50:19,257 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 00:50:19,259 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 00:50:19,260 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 00:50:19,260 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 00:50:19,262 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:20,401 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/563632b4b/f4cc72789634492aa653aea6752d5598/FLAG884acd6ef [2025-03-04 00:50:20,555 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 00:50:20,555 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:20,563 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/563632b4b/f4cc72789634492aa653aea6752d5598/FLAG884acd6ef [2025-03-04 00:50:20,955 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/563632b4b/f4cc72789634492aa653aea6752d5598 [2025-03-04 00:50:20,957 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 00:50:20,957 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 00:50:20,958 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 00:50:20,958 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 00:50:20,961 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 00:50:20,962 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 12:50:20" (1/1) ... [2025-03-04 00:50:20,962 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@16ea96ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:20, skipping insertion in model container [2025-03-04 00:50:20,962 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 12:50:20" (1/1) ... [2025-03-04 00:50:20,974 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 00:50:21,060 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i[912,925] [2025-03-04 00:50:21,081 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 00:50:21,092 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 00:50:21,099 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-0.i[912,925] [2025-03-04 00:50:21,109 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 00:50:21,123 INFO L204 MainTranslator]: Completed translation [2025-03-04 00:50:21,124 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21 WrapperNode [2025-03-04 00:50:21,124 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 00:50:21,125 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 00:50:21,125 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 00:50:21,125 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 00:50:21,130 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,137 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,152 INFO L138 Inliner]: procedures = 27, calls = 21, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 86 [2025-03-04 00:50:21,152 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 00:50:21,153 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 00:50:21,153 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 00:50:21,153 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 00:50:21,160 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,161 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,163 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,171 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-03-04 00:50:21,172 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,172 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,178 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,179 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,182 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,183 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,185 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 00:50:21,186 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 00:50:21,186 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 00:50:21,186 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 00:50:21,187 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (1/1) ... [2025-03-04 00:50:21,192 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 00:50:21,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 00:50:21,217 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-04 00:50:21,223 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-04 00:50:21,238 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 00:50:21,240 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-04 00:50:21,240 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-04 00:50:21,240 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-04 00:50:21,240 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 00:50:21,240 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 00:50:21,297 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 00:50:21,299 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 00:50:37,409 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-03-04 00:50:37,409 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 00:50:37,416 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 00:50:37,416 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 00:50:37,417 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 12:50:37 BoogieIcfgContainer [2025-03-04 00:50:37,417 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 00:50:37,418 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 00:50:37,418 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 00:50:37,422 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 00:50:37,422 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 12:50:20" (1/3) ... [2025-03-04 00:50:37,423 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1405afa0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 12:50:37, skipping insertion in model container [2025-03-04 00:50:37,423 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 12:50:21" (2/3) ... [2025-03-04 00:50:37,423 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1405afa0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 12:50:37, skipping insertion in model container [2025-03-04 00:50:37,423 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 12:50:37" (3/3) ... [2025-03-04 00:50:37,424 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-0.i [2025-03-04 00:50:37,435 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 00:50:37,436 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-0.i that has 2 procedures, 40 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-04 00:50:37,471 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 00:50:37,482 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;@3dd4b82d, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 00:50:37,482 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-04 00:50:37,485 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 29 states have (on average 1.4482758620689655) internal successors, (42), 30 states have internal predecessors, (42), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 00:50:37,490 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2025-03-04 00:50:37,490 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 00:50:37,490 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 00:50:37,491 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 00:50:37,494 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 00:50:37,494 INFO L85 PathProgramCache]: Analyzing trace with hash 273599856, now seen corresponding path program 1 times [2025-03-04 00:50:37,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 00:50:37,504 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1989839347] [2025-03-04 00:50:37,505 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 00:50:37,505 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-03-04 00:50:37,505 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 00:50:37,507 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/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-03-04 00:50:37,508 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 00:50:37,557 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:37,937 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:37,938 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:37,938 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 00:50:37,958 INFO L256 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-04 00:50:37,962 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 00:50:37,981 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 54 proven. 0 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2025-03-04 00:50:37,981 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 00:50:37,981 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-04 00:50:37,981 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1989839347] [2025-03-04 00:50:37,982 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1989839347] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 00:50:37,982 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 00:50:37,982 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-04 00:50:37,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1325692436] [2025-03-04 00:50:37,984 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 00:50:37,988 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-04 00:50:37,989 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-04 00:50:38,001 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-04 00:50:38,002 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-04 00:50:38,004 INFO L87 Difference]: Start difference. First operand has 40 states, 29 states have (on average 1.4482758620689655) internal successors, (42), 30 states have internal predecessors, (42), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 00:50:38,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 00:50:38,019 INFO L93 Difference]: Finished difference Result 73 states and 117 transitions. [2025-03-04 00:50:38,019 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-04 00:50:38,021 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 58 [2025-03-04 00:50:38,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 00:50:38,025 INFO L225 Difference]: With dead ends: 73 [2025-03-04 00:50:38,025 INFO L226 Difference]: Without dead ends: 36 [2025-03-04 00:50:38,027 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 57 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-03-04 00:50:38,029 INFO L435 NwaCegarLoop]: 49 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-04 00:50:38,031 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-04 00:50:38,039 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2025-03-04 00:50:38,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2025-03-04 00:50:38,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 00:50:38,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 49 transitions. [2025-03-04 00:50:38,057 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 49 transitions. Word has length 58 [2025-03-04 00:50:38,057 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 00:50:38,058 INFO L471 AbstractCegarLoop]: Abstraction has 36 states and 49 transitions. [2025-03-04 00:50:38,058 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 00:50:38,058 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 49 transitions. [2025-03-04 00:50:38,059 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2025-03-04 00:50:38,059 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 00:50:38,059 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 00:50:38,074 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 00:50:38,260 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/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-03-04 00:50:38,260 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 00:50:38,261 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 00:50:38,261 INFO L85 PathProgramCache]: Analyzing trace with hash 887968206, now seen corresponding path program 1 times [2025-03-04 00:50:38,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 00:50:38,262 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [260313478] [2025-03-04 00:50:38,262 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 00:50:38,262 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-03-04 00:50:38,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 00:50:38,264 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/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-03-04 00:50:38,265 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 00:50:38,294 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-03-04 00:50:38,678 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-03-04 00:50:38,678 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 00:50:38,678 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 00:50:38,701 INFO L256 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-03-04 00:50:38,706 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 00:50:51,962 WARN L286 SmtUtils]: Spent 8.06s on a formula simplification that was a NOOP. DAG size: 6 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:00,051 WARN L286 SmtUtils]: Spent 8.09s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:05,286 WARN L286 SmtUtils]: Spent 5.23s on a formula simplification that was a NOOP. DAG size: 6 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:10,878 WARN L286 SmtUtils]: Spent 5.59s on a formula simplification that was a NOOP. DAG size: 7 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:18,944 WARN L286 SmtUtils]: Spent 8.06s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:31,116 WARN L286 SmtUtils]: Spent 8.07s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:39,195 WARN L286 SmtUtils]: Spent 8.08s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-04 00:51:43,217 WARN L851 $PredicateComparison]: unable to prove that (and (= (_ bv0 8) c_~var_1_9~0) (= c_~var_1_1~0 (fp.sub c_currentRoundingMode c_~var_1_3~0 c_~var_1_4~0)) (fp.leq c_~var_1_3~0 ((_ to_fp 11 53) c_currentRoundingMode ((_ to_fp 8 24) c_currentRoundingMode 9223372036854765600.0))) (fp.geq c_~var_1_3~0 ((_ to_fp 11 53) c_currentRoundingMode ((_ to_fp 8 24) c_currentRoundingMode (/ 1.0 100000000000000000000.0)))) (= c_~var_1_3~0 c_~var_1_5~0) (fp.eq (fp.add c_currentRoundingMode c_~var_1_3~0 (fp.add c_currentRoundingMode c_~var_1_4~0 c_~var_1_1~0)) c_~var_1_1~0) (= c_currentRoundingMode roundNearestTiesToEven) (= (_ bv0 8) c_~var_1_2~0)) is different from false