./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-17.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e2fb8bed 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_loopvsstraightlinecode_50-while_file-17.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 dafa341f40b13e49f80402e9ea3402d959e0a4d8911cbb5b816668fe007b77dd --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:51:43,202 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:51:43,251 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 14:51:43,254 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:51:43,254 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:51:43,270 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:51:43,271 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:51:43,271 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:51:43,271 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:51:43,271 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:51:43,271 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:51:43,271 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:51:43,272 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:51:43,272 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:51:43,273 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:51:43,273 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:51:43,273 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:51:43,273 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:51:43,274 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:51:43,275 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:51:43,275 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:51:43,275 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:51:43,276 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:51:43,276 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 -> dafa341f40b13e49f80402e9ea3402d959e0a4d8911cbb5b816668fe007b77dd [2025-03-08 14:51:43,482 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:51:43,488 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:51:43,490 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:51:43,491 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:51:43,491 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:51:43,492 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:44,573 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e32ac21c/ebab3bcaf6d34d77aefda24a375bf6ef/FLAG4b03f3199 [2025-03-08 14:51:44,818 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:51:44,820 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:44,827 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e32ac21c/ebab3bcaf6d34d77aefda24a375bf6ef/FLAG4b03f3199 [2025-03-08 14:51:45,130 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e32ac21c/ebab3bcaf6d34d77aefda24a375bf6ef [2025-03-08 14:51:45,131 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:51:45,132 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:51:45,133 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:51:45,133 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:51:45,136 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:51:45,136 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,137 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f434149 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45, skipping insertion in model container [2025-03-08 14:51:45,137 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,151 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:51:45,248 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_loopvsstraightlinecode_50-while_file-17.i[915,928] [2025-03-08 14:51:45,298 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:51:45,310 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:51:45,319 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_loopvsstraightlinecode_50-while_file-17.i[915,928] [2025-03-08 14:51:45,347 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:51:45,366 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:51:45,367 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45 WrapperNode [2025-03-08 14:51:45,367 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:51:45,368 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:51:45,368 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:51:45,368 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:51:45,373 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,380 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,407 INFO L138 Inliner]: procedures = 26, calls = 31, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 159 [2025-03-08 14:51:45,407 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:51:45,408 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:51:45,408 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:51:45,408 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:51:45,413 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,413 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,415 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,429 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-08 14:51:45,430 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,430 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,435 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,435 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,436 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,437 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,439 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:51:45,440 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:51:45,440 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:51:45,440 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:51:45,440 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (1/1) ... [2025-03-08 14:51:45,444 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:51:45,454 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:51:45,466 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-08 14:51:45,472 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-08 14:51:45,485 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:51:45,485 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:51:45,485 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:51:45,485 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-08 14:51:45,485 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:51:45,486 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:51:45,536 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:51:45,537 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:51:45,751 INFO L1307 $ProcedureCfgBuilder]: dead code at ProgramPoint L121: havoc property_#t~ite17#1;havoc property_#t~ite16#1;havoc property_#t~bitwise15#1;havoc property_#t~short18#1; [2025-03-08 14:51:45,779 INFO L? ?]: Removed 20 outVars from TransFormulas that were not future-live. [2025-03-08 14:51:45,779 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:51:45,792 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:51:45,792 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:51:45,792 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:51:45 BoogieIcfgContainer [2025-03-08 14:51:45,792 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:51:45,794 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:51:45,794 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:51:45,797 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:51:45,798 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:51:45" (1/3) ... [2025-03-08 14:51:45,798 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e2e19e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:51:45, skipping insertion in model container [2025-03-08 14:51:45,799 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:45" (2/3) ... [2025-03-08 14:51:45,800 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e2e19e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:51:45, skipping insertion in model container [2025-03-08 14:51:45,800 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:51:45" (3/3) ... [2025-03-08 14:51:45,801 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:45,810 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:51:45,811 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-while_file-17.i that has 2 procedures, 73 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:51:45,843 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:51:45,853 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;@2c7823cb, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:51:45,853 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:51:45,856 INFO L276 IsEmpty]: Start isEmpty. Operand has 73 states, 52 states have (on average 1.4038461538461537) internal successors, (73), 53 states have internal predecessors, (73), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-03-08 14:51:45,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2025-03-08 14:51:45,866 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:45,866 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:45,866 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:45,871 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:45,871 INFO L85 PathProgramCache]: Analyzing trace with hash -728538626, now seen corresponding path program 1 times [2025-03-08 14:51:45,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:51:45,876 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1574400812] [2025-03-08 14:51:45,878 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:45,878 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:51:45,948 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 122 statements into 1 equivalence classes. [2025-03-08 14:51:45,965 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 122 of 122 statements. [2025-03-08 14:51:45,965 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:45,965 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:46,081 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 0 proven. 34 refuted. 0 times theorem prover too weak. 578 trivial. 0 not checked. [2025-03-08 14:51:46,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 14:51:46,083 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1574400812] [2025-03-08 14:51:46,083 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1574400812] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 14:51:46,083 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [729867988] [2025-03-08 14:51:46,083 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:46,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:51:46,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:51:46,087 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-08 14:51:46,108 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-08 14:51:46,165 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 122 statements into 1 equivalence classes. [2025-03-08 14:51:46,216 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 122 of 122 statements. [2025-03-08 14:51:46,217 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:46,217 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:46,219 INFO L256 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:51:46,226 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:51:46,248 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 34 proven. 0 refuted. 0 times theorem prover too weak. 578 trivial. 0 not checked. [2025-03-08 14:51:46,248 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:51:46,249 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [729867988] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:51:46,249 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 14:51:46,249 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 14:51:46,253 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [208679613] [2025-03-08 14:51:46,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:51:46,257 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:51:46,257 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 14:51:46,271 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:51:46,271 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:51:46,272 INFO L87 Difference]: Start difference. First operand has 73 states, 52 states have (on average 1.4038461538461537) internal successors, (73), 53 states have internal predecessors, (73), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand has 2 states, 2 states have (on average 18.5) internal successors, (37), 2 states have internal predecessors, (37), 2 states have call successors, (18), 2 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 2 states have call successors, (18) [2025-03-08 14:51:46,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:51:46,291 INFO L93 Difference]: Finished difference Result 140 states and 231 transitions. [2025-03-08 14:51:46,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:51:46,293 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 18.5) internal successors, (37), 2 states have internal predecessors, (37), 2 states have call successors, (18), 2 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 2 states have call successors, (18) Word has length 122 [2025-03-08 14:51:46,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:51:46,297 INFO L225 Difference]: With dead ends: 140 [2025-03-08 14:51:46,297 INFO L226 Difference]: Without dead ends: 70 [2025-03-08 14:51:46,299 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 123 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-08 14:51:46,300 INFO L435 NwaCegarLoop]: 102 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 2 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 2 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 2 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 14:51:46,301 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 102 Invalid, 2 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 2 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:51:46,309 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2025-03-08 14:51:46,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2025-03-08 14:51:46,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 50 states have (on average 1.36) internal successors, (68), 50 states have internal predecessors, (68), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-03-08 14:51:46,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 104 transitions. [2025-03-08 14:51:46,332 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 104 transitions. Word has length 122 [2025-03-08 14:51:46,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:51:46,332 INFO L471 AbstractCegarLoop]: Abstraction has 70 states and 104 transitions. [2025-03-08 14:51:46,333 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 18.5) internal successors, (37), 2 states have internal predecessors, (37), 2 states have call successors, (18), 2 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 2 states have call successors, (18) [2025-03-08 14:51:46,333 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 104 transitions. [2025-03-08 14:51:46,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2025-03-08 14:51:46,335 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:46,335 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:46,343 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-08 14:51:46,540 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-08 14:51:46,540 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:46,540 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:46,540 INFO L85 PathProgramCache]: Analyzing trace with hash -1711547712, now seen corresponding path program 1 times [2025-03-08 14:51:46,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:51:46,540 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1094580275] [2025-03-08 14:51:46,541 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:46,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:51:46,551 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 122 statements into 1 equivalence classes. [2025-03-08 14:51:46,638 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 122 of 122 statements. [2025-03-08 14:51:46,641 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:46,642 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:47,021 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 612 trivial. 0 not checked. [2025-03-08 14:51:47,022 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 14:51:47,023 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1094580275] [2025-03-08 14:51:47,023 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1094580275] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:51:47,023 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 14:51:47,023 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-08 14:51:47,023 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1769340755] [2025-03-08 14:51:47,023 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:51:47,024 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-08 14:51:47,024 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 14:51:47,025 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-08 14:51:47,025 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2025-03-08 14:51:47,025 INFO L87 Difference]: Start difference. First operand 70 states and 104 transitions. Second operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-03-08 14:51:47,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:51:47,187 INFO L93 Difference]: Finished difference Result 205 states and 307 transitions. [2025-03-08 14:51:47,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-08 14:51:47,187 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) Word has length 122 [2025-03-08 14:51:47,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:51:47,189 INFO L225 Difference]: With dead ends: 205 [2025-03-08 14:51:47,191 INFO L226 Difference]: Without dead ends: 138 [2025-03-08 14:51:47,191 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2025-03-08 14:51:47,192 INFO L435 NwaCegarLoop]: 96 mSDtfsCounter, 71 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 335 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2025-03-08 14:51:47,193 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 335 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2025-03-08 14:51:47,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2025-03-08 14:51:47,206 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 106. [2025-03-08 14:51:47,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 67 states have (on average 1.2686567164179106) internal successors, (85), 67 states have internal predecessors, (85), 36 states have call successors, (36), 2 states have call predecessors, (36), 2 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2025-03-08 14:51:47,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 157 transitions. [2025-03-08 14:51:47,212 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 157 transitions. Word has length 122 [2025-03-08 14:51:47,212 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:51:47,213 INFO L471 AbstractCegarLoop]: Abstraction has 106 states and 157 transitions. [2025-03-08 14:51:47,213 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-03-08 14:51:47,213 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 157 transitions. [2025-03-08 14:51:47,214 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-03-08 14:51:47,214 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:47,214 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:47,214 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-08 14:51:47,214 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:47,215 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:47,215 INFO L85 PathProgramCache]: Analyzing trace with hash 1232347572, now seen corresponding path program 1 times [2025-03-08 14:51:47,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:51:47,215 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416783100] [2025-03-08 14:51:47,215 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:47,215 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:51:47,229 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:51:47,327 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:51:47,327 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:47,327 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-03-08 14:51:47,329 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [653188706] [2025-03-08 14:51:47,330 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:47,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:51:47,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:51:47,332 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-08 14:51:47,333 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-03-08 14:51:47,393 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:51:47,426 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:51:47,426 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:47,426 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:51:47,426 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 14:51:47,443 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:51:47,460 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:51:47,460 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:47,460 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:51:47,517 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 14:51:47,517 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 14:51:47,518 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 14:51:47,526 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2025-03-08 14:51:47,723 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2025-03-08 14:51:47,725 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-03-08 14:51:47,791 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 14:51:47,794 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 02:51:47 BoogieIcfgContainer [2025-03-08 14:51:47,794 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 14:51:47,795 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 14:51:47,795 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 14:51:47,795 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 14:51:47,795 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:51:45" (3/4) ... [2025-03-08 14:51:47,797 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 14:51:47,797 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 14:51:47,798 INFO L158 Benchmark]: Toolchain (without parser) took 2665.50ms. Allocated memory is still 142.6MB. Free memory was 103.6MB in the beginning and 82.4MB in the end (delta: 21.2MB). Peak memory consumption was 19.9MB. Max. memory is 16.1GB. [2025-03-08 14:51:47,798 INFO L158 Benchmark]: CDTParser took 0.43ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:51:47,800 INFO L158 Benchmark]: CACSL2BoogieTranslator took 234.17ms. Allocated memory is still 142.6MB. Free memory was 103.6MB in the beginning and 90.1MB in the end (delta: 13.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 14:51:47,800 INFO L158 Benchmark]: Boogie Procedure Inliner took 39.67ms. Allocated memory is still 142.6MB. Free memory was 90.1MB in the beginning and 85.9MB in the end (delta: 4.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:51:47,800 INFO L158 Benchmark]: Boogie Preprocessor took 31.18ms. Allocated memory is still 142.6MB. Free memory was 85.9MB in the beginning and 81.7MB in the end (delta: 4.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 14:51:47,801 INFO L158 Benchmark]: IcfgBuilder took 352.83ms. Allocated memory is still 142.6MB. Free memory was 81.7MB in the beginning and 56.5MB in the end (delta: 25.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-08 14:51:47,801 INFO L158 Benchmark]: TraceAbstraction took 2000.38ms. Allocated memory is still 142.6MB. Free memory was 56.5MB in the beginning and 82.4MB in the end (delta: -25.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:51:47,801 INFO L158 Benchmark]: Witness Printer took 2.51ms. Allocated memory is still 142.6MB. Free memory was 82.4MB in the beginning and 82.4MB in the end (delta: 37.0kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:51:47,802 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.43ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 234.17ms. Allocated memory is still 142.6MB. Free memory was 103.6MB in the beginning and 90.1MB in the end (delta: 13.5MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 39.67ms. Allocated memory is still 142.6MB. Free memory was 90.1MB in the beginning and 85.9MB in the end (delta: 4.2MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 31.18ms. Allocated memory is still 142.6MB. Free memory was 85.9MB in the beginning and 81.7MB in the end (delta: 4.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 352.83ms. Allocated memory is still 142.6MB. Free memory was 81.7MB in the beginning and 56.5MB in the end (delta: 25.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 2000.38ms. Allocated memory is still 142.6MB. Free memory was 56.5MB in the beginning and 82.4MB in the end (delta: -25.9MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 2.51ms. Allocated memory is still 142.6MB. Free memory was 82.4MB in the beginning and 82.4MB in the end (delta: 37.0kB). 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 121, overapproximation of someBinaryDOUBLEComparisonOperation at line 58, overapproximation of someBinaryDOUBLEComparisonOperation at line 106, overapproximation of someBinaryDOUBLEComparisonOperation at line 108, overapproximation of someBinaryDOUBLEComparisonOperation at line 74, overapproximation of someBinaryDOUBLEComparisonOperation at line 71. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 25; [L23] unsigned char var_1_2 = 25; [L24] unsigned char var_1_3 = 0; [L25] unsigned char var_1_4 = 0; [L26] signed long int var_1_5 = 4; [L27] unsigned char var_1_7 = 0; [L28] unsigned char var_1_8 = 1; [L29] unsigned char var_1_9 = 0; [L30] unsigned char var_1_10 = 0; [L31] double var_1_11 = 7.3; [L32] double var_1_12 = 1.25; [L33] double var_1_13 = 128.8; [L34] signed char var_1_14 = -1; [L35] signed char var_1_15 = 10; [L36] signed short int var_1_16 = 8; [L37] unsigned long int var_1_18 = 128; [L38] unsigned long int var_1_19 = 3963666122; [L39] unsigned char last_1_var_1_8 = 1; [L40] signed char last_1_var_1_14 = -1; VAL [isInitial=0, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=25, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L125] isInitial = 1 [L126] FCALL initially() [L127] COND TRUE 1 [L128] CALL updateLastVariables() [L117] last_1_var_1_8 = var_1_8 [L118] last_1_var_1_14 = var_1_14 VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=25, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L128] RET updateLastVariables() [L129] CALL updateVariables() [L87] var_1_2 = __VERIFIER_nondet_uchar() [L88] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L88] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L89] CALL assume_abort_if_not(var_1_2 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L89] RET assume_abort_if_not(var_1_2 <= 127) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=0, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L90] var_1_3 = __VERIFIER_nondet_uchar() [L91] CALL assume_abort_if_not(var_1_3 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L91] RET assume_abort_if_not(var_1_3 >= 0) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L92] CALL assume_abort_if_not(var_1_3 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L92] RET assume_abort_if_not(var_1_3 <= 127) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=0, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L93] var_1_4 = __VERIFIER_nondet_uchar() [L94] CALL assume_abort_if_not(var_1_4 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L94] RET assume_abort_if_not(var_1_4 >= 0) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L95] CALL assume_abort_if_not(var_1_4 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L95] RET assume_abort_if_not(var_1_4 <= 127) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=0, var_1_8=1, var_1_9=0] [L96] var_1_7 = __VERIFIER_nondet_uchar() [L97] CALL assume_abort_if_not(var_1_7 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_8=1, var_1_9=0] [L97] RET assume_abort_if_not(var_1_7 >= 0) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_8=1, var_1_9=0] [L98] CALL assume_abort_if_not(var_1_7 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=0] [L98] RET assume_abort_if_not(var_1_7 <= 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=0] [L99] var_1_9 = __VERIFIER_nondet_uchar() [L100] CALL assume_abort_if_not(var_1_9 >= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L100] RET assume_abort_if_not(var_1_9 >= 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L101] CALL assume_abort_if_not(var_1_9 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L101] RET assume_abort_if_not(var_1_9 <= 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=0, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L102] var_1_10 = __VERIFIER_nondet_uchar() [L103] CALL assume_abort_if_not(var_1_10 >= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L103] RET assume_abort_if_not(var_1_10 >= 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L104] CALL assume_abort_if_not(var_1_10 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L104] RET assume_abort_if_not(var_1_10 <= 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_12=5/4, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L105] var_1_12 = __VERIFIER_nondet_double() [L106] CALL assume_abort_if_not((var_1_12 >= -922337.2036854765600e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L106] RET assume_abort_if_not((var_1_12 >= -922337.2036854765600e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_13=644/5, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L107] var_1_13 = __VERIFIER_nondet_double() [L108] CALL assume_abort_if_not((var_1_13 >= -922337.2036854765600e+13F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L108] RET assume_abort_if_not((var_1_13 >= -922337.2036854765600e+13F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=10, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L109] var_1_15 = __VERIFIER_nondet_char() [L110] CALL assume_abort_if_not(var_1_15 >= -127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L110] RET assume_abort_if_not(var_1_15 >= -127) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L111] CALL assume_abort_if_not(var_1_15 <= 126) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L111] RET assume_abort_if_not(var_1_15 <= 126) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=3963666122, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L112] var_1_19 = __VERIFIER_nondet_ulong() [L113] CALL assume_abort_if_not(var_1_19 >= 2147483647) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L113] RET assume_abort_if_not(var_1_19 >= 2147483647) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L114] CALL assume_abort_if_not(var_1_19 <= 4294967294) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L114] RET assume_abort_if_not(var_1_19 <= 4294967294) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L129] RET updateVariables() [L130] CALL step() [L44] unsigned char stepLocal_0 = last_1_var_1_8; VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, stepLocal_0=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L45] COND TRUE stepLocal_0 && last_1_var_1_8 VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=4, var_1_7=1, var_1_8=1, var_1_9=1] [L46] COND TRUE \read(last_1_var_1_8) [L47] var_1_5 = (((((last_1_var_1_14) < 0 ) ? -(last_1_var_1_14) : (last_1_var_1_14))) - ((((var_1_4) < (var_1_2)) ? (var_1_4) : (var_1_2)))) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L52] COND TRUE var_1_5 < var_1_3 [L53] var_1_8 = ((var_1_7 || (last_1_var_1_8 || var_1_9)) && var_1_10) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=25, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L57] var_1_1 = (50 + ((((var_1_2) < (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))) ? (var_1_2) : (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))))) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L58] COND FALSE !((64.4f + 1.5f) <= var_1_13) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L63] unsigned char stepLocal_3 = var_1_9 && var_1_8; VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, stepLocal_3=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=128, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L64] COND TRUE stepLocal_3 || (var_1_8 && var_1_10) [L65] var_1_18 = (var_1_19 - (((((1991720936u - var_1_1)) < (var_1_2)) ? ((1991720936u - var_1_1)) : (var_1_2)))) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L69] signed long int stepLocal_1 = 8 + var_1_14; VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, stepLocal_1=7, var_1_10=1, var_1_11=73/10, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L70] COND TRUE var_1_4 == stepLocal_1 [L71] var_1_11 = ((((var_1_12) > (var_1_13)) ? (var_1_12) : (var_1_13))) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L73] EXPR var_1_15 & var_1_1 VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L73] unsigned long int stepLocal_2 = var_1_18 * (var_1_15 & var_1_1); [L74] COND FALSE !(var_1_12 >= 9.6) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, stepLocal_2=0, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L130] RET step() [L131] CALL, EXPR property() [L121] EXPR (((((var_1_1 == ((unsigned char) (50 + ((((var_1_2) < (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))) ? (var_1_2) : (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))))))) && ((last_1_var_1_8 && last_1_var_1_8) ? (last_1_var_1_8 ? (var_1_5 == ((signed long int) (((((last_1_var_1_14) < 0 ) ? -(last_1_var_1_14) : (last_1_var_1_14))) - ((((var_1_4) < (var_1_2)) ? (var_1_4) : (var_1_2)))))) : (var_1_5 == ((signed long int) 8))) : 1)) && ((var_1_5 < var_1_3) ? (var_1_8 == ((unsigned char) ((var_1_7 || (last_1_var_1_8 || var_1_9)) && var_1_10))) : (var_1_8 == ((unsigned char) (! var_1_10))))) && ((var_1_4 == (8 + var_1_14)) ? (var_1_11 == ((double) ((((var_1_12) > (var_1_13)) ? (var_1_12) : (var_1_13))))) : 1)) && (((64.4f + 1.5f) <= var_1_13) ? ((var_1_1 >= var_1_4) ? (var_1_14 == ((signed char) var_1_15)) : 1) : 1)) && ((var_1_12 >= 9.6) ? (var_1_10 ? (var_1_16 == ((signed short int) (2 - var_1_1))) : (((var_1_18 * (var_1_15 & var_1_1)) <= var_1_3) ? (var_1_16 == ((signed short int) var_1_18)) : (var_1_16 == ((signed short int) var_1_4)))) : 1) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L121-L122] return ((((((var_1_1 == ((unsigned char) (50 + ((((var_1_2) < (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))) ? (var_1_2) : (((((var_1_3) < (var_1_4)) ? (var_1_3) : (var_1_4))))))))) && ((last_1_var_1_8 && last_1_var_1_8) ? (last_1_var_1_8 ? (var_1_5 == ((signed long int) (((((last_1_var_1_14) < 0 ) ? -(last_1_var_1_14) : (last_1_var_1_14))) - ((((var_1_4) < (var_1_2)) ? (var_1_4) : (var_1_2)))))) : (var_1_5 == ((signed long int) 8))) : 1)) && ((var_1_5 < var_1_3) ? (var_1_8 == ((unsigned char) ((var_1_7 || (last_1_var_1_8 || var_1_9)) && var_1_10))) : (var_1_8 == ((unsigned char) (! var_1_10))))) && ((var_1_4 == (8 + var_1_14)) ? (var_1_11 == ((double) ((((var_1_12) > (var_1_13)) ? (var_1_12) : (var_1_13))))) : 1)) && (((64.4f + 1.5f) <= var_1_13) ? ((var_1_1 >= var_1_4) ? (var_1_14 == ((signed char) var_1_15)) : 1) : 1)) && ((var_1_12 >= 9.6) ? (var_1_10 ? (var_1_16 == ((signed short int) (2 - var_1_1))) : (((var_1_18 * (var_1_15 & var_1_1)) <= var_1_3) ? (var_1_16 == ((signed short int) var_1_18)) : (var_1_16 == ((signed short int) var_1_4)))) : 1)) && (((var_1_9 && var_1_8) || (var_1_8 && var_1_10)) ? (var_1_18 == ((unsigned long int) (var_1_19 - (((((1991720936u - var_1_1)) < (var_1_2)) ? ((1991720936u - var_1_1)) : (var_1_2)))))) : (var_1_18 == ((unsigned long int) var_1_2))) ; [L131] RET, EXPR property() [L131] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] [L19] reach_error() VAL [isInitial=1, last_1_var_1_14=-1, last_1_var_1_8=1, var_1_10=1, var_1_11=2, var_1_12=2, var_1_13=0, var_1_14=-1, var_1_15=0, var_1_16=8, var_1_18=-2147483657, var_1_19=-2147483649, var_1_1=57, var_1_2=8, var_1_3=7, var_1_4=7, var_1_5=-6, var_1_7=1, var_1_8=1, var_1_9=1] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 73 locations, 127 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.9s, OverallIterations: 3, TraceHistogramMax: 18, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 71 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 71 mSDsluCounter, 437 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 239 mSDsCounter, 56 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 77 IncrementalHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 56 mSolverCounterUnsat, 198 mSDtfsCounter, 77 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 132 GetRequests, 127 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=106occurred in iteration=2, InterpolantAutomatonStates: 7, 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, 32 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 0.5s InterpolantComputationTime, 612 NumberOfCodeBlocks, 612 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 363 ConstructedInterpolants, 0 QuantifiedInterpolants, 443 SizeOfPredicates, 0 NumberOfNonLiveVariables, 282 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 3 InterpolantComputations, 2 PerfectInterpolantSequences, 1802/1836 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-08 14:51:47,816 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/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/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_loopvsstraightlinecode_50-while_file-17.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 dafa341f40b13e49f80402e9ea3402d959e0a4d8911cbb5b816668fe007b77dd --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:51:49,523 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:51:49,609 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 14:51:49,615 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:51:49,615 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:51:49,635 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:51:49,638 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:51:49,638 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:51:49,638 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:51:49,639 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:51:49,639 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:51:49,639 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:51:49,640 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:51:49,640 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:51:49,640 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:51:49,641 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:51:49,641 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:51:49,642 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:51:49,642 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:51:49,642 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:51:49,642 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:51:49,642 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:51:49,642 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:51:49,643 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:51:49,644 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 -> dafa341f40b13e49f80402e9ea3402d959e0a4d8911cbb5b816668fe007b77dd [2025-03-08 14:51:49,875 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:51:49,880 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:51:49,881 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:51:49,883 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:51:49,884 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:51:49,885 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:51,043 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/374a6734f/2f422e8c1447434e897213a1635b3a00/FLAGb26c742a5 [2025-03-08 14:51:51,250 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:51:51,251 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:51,257 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/374a6734f/2f422e8c1447434e897213a1635b3a00/FLAGb26c742a5 [2025-03-08 14:51:51,273 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/374a6734f/2f422e8c1447434e897213a1635b3a00 [2025-03-08 14:51:51,277 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:51:51,278 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:51:51,279 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:51:51,279 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:51:51,283 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:51:51,283 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,284 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@54ea1227 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51, skipping insertion in model container [2025-03-08 14:51:51,284 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,298 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:51:51,384 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_loopvsstraightlinecode_50-while_file-17.i[915,928] [2025-03-08 14:51:51,431 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:51:51,440 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:51:51,450 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_loopvsstraightlinecode_50-while_file-17.i[915,928] [2025-03-08 14:51:51,465 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:51:51,476 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:51:51,476 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51 WrapperNode [2025-03-08 14:51:51,476 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:51:51,477 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:51:51,477 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:51:51,477 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:51:51,481 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,489 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,509 INFO L138 Inliner]: procedures = 27, calls = 31, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 126 [2025-03-08 14:51:51,510 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:51:51,510 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:51:51,510 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:51:51,510 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:51:51,521 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,521 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,524 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,531 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-08 14:51:51,531 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,531 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,536 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,537 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,538 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,539 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,541 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:51:51,543 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:51:51,543 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:51:51,543 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:51:51,545 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (1/1) ... [2025-03-08 14:51:51,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:51:51,558 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:51:51,568 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-08 14:51:51,570 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-08 14:51:51,589 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:51:51,589 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 14:51:51,590 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:51:51,590 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:51:51,590 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:51:51,590 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:51:51,655 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:51:51,656 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:51:52,148 INFO L? ?]: Removed 16 outVars from TransFormulas that were not future-live. [2025-03-08 14:51:52,148 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:51:52,156 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:51:52,156 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:51:52,156 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:51:52 BoogieIcfgContainer [2025-03-08 14:51:52,156 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:51:52,158 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:51:52,158 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:51:52,162 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:51:52,162 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:51:51" (1/3) ... [2025-03-08 14:51:52,163 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@569e7131 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:51:52, skipping insertion in model container [2025-03-08 14:51:52,163 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:51:51" (2/3) ... [2025-03-08 14:51:52,163 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@569e7131 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:51:52, skipping insertion in model container [2025-03-08 14:51:52,164 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:51:52" (3/3) ... [2025-03-08 14:51:52,164 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-while_file-17.i [2025-03-08 14:51:52,189 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:51:52,190 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-while_file-17.i that has 2 procedures, 60 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:51:52,226 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:51:52,235 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;@376c431a, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:51:52,236 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:51:52,238 INFO L276 IsEmpty]: Start isEmpty. Operand has 60 states, 39 states have (on average 1.358974358974359) internal successors, (53), 40 states have internal predecessors, (53), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-03-08 14:51:52,244 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2025-03-08 14:51:52,244 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:52,245 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:52,245 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:52,248 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:52,249 INFO L85 PathProgramCache]: Analyzing trace with hash -253829627, now seen corresponding path program 1 times [2025-03-08 14:51:52,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:51:52,258 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [481623299] [2025-03-08 14:51:52,258 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:52,258 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-08 14:51:52,258 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:51:52,265 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-08 14:51:52,266 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-08 14:51:52,330 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 119 statements into 1 equivalence classes. [2025-03-08 14:51:52,415 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 119 of 119 statements. [2025-03-08 14:51:52,416 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:52,416 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:52,420 INFO L256 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:51:52,425 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:51:52,455 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 322 proven. 0 refuted. 0 times theorem prover too weak. 290 trivial. 0 not checked. [2025-03-08 14:51:52,455 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:51:52,455 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 14:51:52,456 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [481623299] [2025-03-08 14:51:52,456 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [481623299] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:51:52,456 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 14:51:52,456 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 14:51:52,458 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [961709076] [2025-03-08 14:51:52,458 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:51:52,460 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:51:52,460 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 14:51:52,471 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:51:52,473 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:51:52,475 INFO L87 Difference]: Start difference. First operand has 60 states, 39 states have (on average 1.358974358974359) internal successors, (53), 40 states have internal predecessors, (53), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand has 2 states, 2 states have (on average 18.0) internal successors, (36), 2 states have internal predecessors, (36), 2 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2025-03-08 14:51:52,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:51:52,494 INFO L93 Difference]: Finished difference Result 114 states and 191 transitions. [2025-03-08 14:51:52,495 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:51:52,497 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 18.0) internal successors, (36), 2 states have internal predecessors, (36), 2 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) Word has length 119 [2025-03-08 14:51:52,497 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:51:52,502 INFO L225 Difference]: With dead ends: 114 [2025-03-08 14:51:52,502 INFO L226 Difference]: Without dead ends: 57 [2025-03-08 14:51:52,504 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 118 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-08 14:51:52,507 INFO L435 NwaCegarLoop]: 84 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, 84 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-08 14:51:52,509 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:51:52,518 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2025-03-08 14:51:52,536 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2025-03-08 14:51:52,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 37 states have internal predecessors, (48), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-03-08 14:51:52,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 84 transitions. [2025-03-08 14:51:52,543 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 84 transitions. Word has length 119 [2025-03-08 14:51:52,544 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:51:52,544 INFO L471 AbstractCegarLoop]: Abstraction has 57 states and 84 transitions. [2025-03-08 14:51:52,544 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 18.0) internal successors, (36), 2 states have internal predecessors, (36), 2 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2025-03-08 14:51:52,544 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 84 transitions. [2025-03-08 14:51:52,547 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2025-03-08 14:51:52,548 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:52,548 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:52,556 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-08 14:51:52,748 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-08 14:51:52,748 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:52,749 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:52,749 INFO L85 PathProgramCache]: Analyzing trace with hash -213062525, now seen corresponding path program 1 times [2025-03-08 14:51:52,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:51:52,750 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [478292374] [2025-03-08 14:51:52,750 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:52,750 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-08 14:51:52,750 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:51:52,752 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-08 14:51:52,754 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-08 14:51:52,790 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 119 statements into 1 equivalence classes. [2025-03-08 14:51:52,882 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 119 of 119 statements. [2025-03-08 14:51:52,883 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:52,883 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:52,887 INFO L256 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-03-08 14:51:52,894 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:51:53,164 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 612 trivial. 0 not checked. [2025-03-08 14:51:53,164 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:51:53,164 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 14:51:53,164 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [478292374] [2025-03-08 14:51:53,165 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [478292374] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:51:53,165 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 14:51:53,165 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-08 14:51:53,165 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [894619580] [2025-03-08 14:51:53,165 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:51:53,167 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-08 14:51:53,167 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 14:51:53,167 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-08 14:51:53,168 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-08 14:51:53,168 INFO L87 Difference]: Start difference. First operand 57 states and 84 transitions. Second operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 4 states have internal predecessors, (32), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-03-08 14:51:53,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:51:53,547 INFO L93 Difference]: Finished difference Result 166 states and 247 transitions. [2025-03-08 14:51:53,553 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-08 14:51:53,553 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 4 states have internal predecessors, (32), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) Word has length 119 [2025-03-08 14:51:53,553 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:51:53,554 INFO L225 Difference]: With dead ends: 166 [2025-03-08 14:51:53,554 INFO L226 Difference]: Without dead ends: 112 [2025-03-08 14:51:53,555 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2025-03-08 14:51:53,556 INFO L435 NwaCegarLoop]: 78 mSDtfsCounter, 47 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 66 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 264 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 66 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2025-03-08 14:51:53,557 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 264 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 66 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2025-03-08 14:51:53,557 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2025-03-08 14:51:53,568 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 93. [2025-03-08 14:51:53,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 54 states have (on average 1.2037037037037037) internal successors, (65), 54 states have internal predecessors, (65), 36 states have call successors, (36), 2 states have call predecessors, (36), 2 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2025-03-08 14:51:53,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 137 transitions. [2025-03-08 14:51:53,577 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 137 transitions. Word has length 119 [2025-03-08 14:51:53,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:51:53,577 INFO L471 AbstractCegarLoop]: Abstraction has 93 states and 137 transitions. [2025-03-08 14:51:53,577 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 4 states have internal predecessors, (32), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-03-08 14:51:53,577 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 137 transitions. [2025-03-08 14:51:53,579 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 121 [2025-03-08 14:51:53,579 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:51:53,579 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-08 14:51:53,585 INFO L540 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)] Forceful destruction successful, exit code 0 [2025-03-08 14:51:53,780 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /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-08 14:51:53,780 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:51:53,781 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:51:53,781 INFO L85 PathProgramCache]: Analyzing trace with hash -1383956474, now seen corresponding path program 1 times [2025-03-08 14:51:53,781 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:51:53,781 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1960407766] [2025-03-08 14:51:53,781 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:51:53,781 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-08 14:51:53,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:51:53,784 INFO L229 MonitoredProcess]: Starting monitored process 4 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-08 14:51:53,785 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 (4)] Waiting until timeout for monitored process [2025-03-08 14:51:53,812 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 120 statements into 1 equivalence classes. [2025-03-08 14:51:53,891 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 120 of 120 statements. [2025-03-08 14:51:53,892 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:51:53,892 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:51:53,896 INFO L256 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 28 conjuncts are in the unsatisfiable core [2025-03-08 14:51:53,901 INFO L279 TraceCheckSpWp]: Computing forward predicates...