./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-1loop_file-83.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-1loop_file-83.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 f501d64c3ae6a1a87dafc1ae088b3f11ed9b8e87fd0c337a0ab1db4279d00583 --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:48:56,423 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:48:56,480 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 14:48:56,484 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:48:56,486 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:48:56,507 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:48:56,509 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:48:56,509 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:48:56,509 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:48:56,510 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:48:56,510 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:48:56,510 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:48:56,511 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:48:56,511 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:48:56,511 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:48:56,511 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:48:56,511 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:48:56,511 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:48:56,511 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:48:56,512 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:48:56,512 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:48:56,513 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:48:56,513 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:48:56,514 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:48:56,514 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:48:56,514 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 -> f501d64c3ae6a1a87dafc1ae088b3f11ed9b8e87fd0c337a0ab1db4279d00583 [2025-03-08 14:48:56,739 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:48:56,747 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:48:56,749 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:48:56,751 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:48:56,751 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:48:56,752 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:48:57,869 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0a8781323/cdd74a5d0c9146af978b6586311dde1a/FLAGd763e5cfa [2025-03-08 14:48:58,093 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:48:58,094 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:48:58,099 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0a8781323/cdd74a5d0c9146af978b6586311dde1a/FLAGd763e5cfa [2025-03-08 14:48:58,441 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0a8781323/cdd74a5d0c9146af978b6586311dde1a [2025-03-08 14:48:58,443 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:48:58,444 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:48:58,445 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:48:58,445 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:48:58,448 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:48:58,448 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,449 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7d9f10cd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58, skipping insertion in model container [2025-03-08 14:48:58,449 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,460 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:48:58,542 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-1loop_file-83.i[915,928] [2025-03-08 14:48:58,580 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:48:58,588 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:48:58,595 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-1loop_file-83.i[915,928] [2025-03-08 14:48:58,610 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:48:58,624 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:48:58,625 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58 WrapperNode [2025-03-08 14:48:58,625 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:48:58,627 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:48:58,627 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:48:58,627 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:48:58,631 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:48:58" (1/1) ... [2025-03-08 14:48:58,638 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:48:58" (1/1) ... [2025-03-08 14:48:58,673 INFO L138 Inliner]: procedures = 26, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 176 [2025-03-08 14:48:58,673 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:48:58,674 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:48:58,674 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:48:58,674 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:48:58,679 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,680 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,687 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,706 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:48:58,706 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,706 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,712 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,713 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,718 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,719 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,723 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:48:58,723 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:48:58,723 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:48:58,723 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:48:58,724 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (1/1) ... [2025-03-08 14:48:58,728 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:48:58,737 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:48:58,749 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:48:58,753 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:48:58,765 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:48:58,765 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:48:58,765 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:48:58,765 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-08 14:48:58,765 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:48:58,765 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:48:58,824 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:48:58,826 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:48:59,106 INFO L1307 $ProcedureCfgBuilder]: dead code at ProgramPoint L106: havoc property_#t~ite18#1;havoc property_#t~bitwise16#1;havoc property_#t~bitwise17#1;havoc property_#t~short19#1; [2025-03-08 14:48:59,128 INFO L? ?]: Removed 17 outVars from TransFormulas that were not future-live. [2025-03-08 14:48:59,129 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:48:59,143 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:48:59,144 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:48:59,144 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:48:59 BoogieIcfgContainer [2025-03-08 14:48:59,144 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:48:59,147 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:48:59,147 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:48:59,150 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:48:59,150 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:48:58" (1/3) ... [2025-03-08 14:48:59,151 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@226d903d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:48:59, skipping insertion in model container [2025-03-08 14:48:59,151 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:48:58" (2/3) ... [2025-03-08 14:48:59,151 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@226d903d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:48:59, skipping insertion in model container [2025-03-08 14:48:59,151 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:48:59" (3/3) ... [2025-03-08 14:48:59,152 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:48:59,163 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:48:59,164 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-1loop_file-83.i that has 2 procedures, 77 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:48:59,208 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:48:59,217 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;@7395f16, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:48:59,218 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:48:59,221 INFO L276 IsEmpty]: Start isEmpty. Operand has 77 states, 55 states have (on average 1.4545454545454546) internal successors, (80), 56 states have internal predecessors, (80), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-03-08 14:48:59,230 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2025-03-08 14:48:59,230 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:48:59,231 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:48:59,231 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:48:59,235 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:48:59,235 INFO L85 PathProgramCache]: Analyzing trace with hash -1412535368, now seen corresponding path program 1 times [2025-03-08 14:48:59,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:48:59,241 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [798828352] [2025-03-08 14:48:59,242 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:48:59,243 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:48:59,311 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-03-08 14:48:59,330 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-03-08 14:48:59,331 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:48:59,332 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:48:59,478 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2025-03-08 14:48:59,479 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 14:48:59,480 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [798828352] [2025-03-08 14:48:59,480 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [798828352] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 14:48:59,480 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [360016417] [2025-03-08 14:48:59,481 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:48:59,481 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:48:59,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:48:59,483 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:48:59,485 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:48:59,546 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-03-08 14:48:59,587 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-03-08 14:48:59,588 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:48:59,588 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:48:59,590 INFO L256 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:48:59,605 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:48:59,631 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 36 proven. 0 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2025-03-08 14:48:59,634 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:48:59,634 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [360016417] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:48:59,635 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 14:48:59,635 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 14:48:59,636 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [845459047] [2025-03-08 14:48:59,636 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:48:59,639 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:48:59,639 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 14:48:59,654 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:48:59,654 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:48:59,656 INFO L87 Difference]: Start difference. First operand has 77 states, 55 states have (on average 1.4545454545454546) internal successors, (80), 56 states have internal predecessors, (80), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand has 2 states, 2 states have (on average 17.0) internal successors, (34), 2 states have internal predecessors, (34), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) [2025-03-08 14:48:59,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:48:59,685 INFO L93 Difference]: Finished difference Result 151 states and 252 transitions. [2025-03-08 14:48:59,685 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:48:59,686 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 17.0) internal successors, (34), 2 states have internal predecessors, (34), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) Word has length 124 [2025-03-08 14:48:59,687 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:48:59,690 INFO L225 Difference]: With dead ends: 151 [2025-03-08 14:48:59,690 INFO L226 Difference]: Without dead ends: 74 [2025-03-08 14:48:59,692 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 125 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:48:59,694 INFO L435 NwaCegarLoop]: 112 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 4 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 14:48:59,696 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 112 Invalid, 4 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:48:59,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2025-03-08 14:48:59,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2025-03-08 14:48:59,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 53 states have (on average 1.4150943396226414) internal successors, (75), 53 states have internal predecessors, (75), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-03-08 14:48:59,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 113 transitions. [2025-03-08 14:48:59,721 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 113 transitions. Word has length 124 [2025-03-08 14:48:59,721 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:48:59,721 INFO L471 AbstractCegarLoop]: Abstraction has 74 states and 113 transitions. [2025-03-08 14:48:59,722 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 17.0) internal successors, (34), 2 states have internal predecessors, (34), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) [2025-03-08 14:48:59,722 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 113 transitions. [2025-03-08 14:48:59,723 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2025-03-08 14:48:59,723 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:48:59,723 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:48:59,732 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:48:59,924 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:48:59,924 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:48:59,925 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:48:59,925 INFO L85 PathProgramCache]: Analyzing trace with hash 713122517, now seen corresponding path program 1 times [2025-03-08 14:48:59,925 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:48:59,925 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [572112211] [2025-03-08 14:48:59,925 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:48:59,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:48:59,945 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-03-08 14:49:00,105 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-03-08 14:49:00,105 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:00,105 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:49:01,019 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 108 proven. 102 refuted. 0 times theorem prover too weak. 474 trivial. 0 not checked. [2025-03-08 14:49:01,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 14:49:01,021 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [572112211] [2025-03-08 14:49:01,021 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [572112211] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 14:49:01,022 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [544346049] [2025-03-08 14:49:01,022 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:49:01,022 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:49:01,022 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:49:01,023 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:49:01,025 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:49:01,073 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-03-08 14:49:01,157 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-03-08 14:49:01,157 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:01,157 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:49:01,160 INFO L256 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 28 conjuncts are in the unsatisfiable core [2025-03-08 14:49:01,166 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:49:02,132 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 473 proven. 102 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2025-03-08 14:49:02,132 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-08 14:49:02,759 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [544346049] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 14:49:02,759 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-03-08 14:49:02,759 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 18] total 22 [2025-03-08 14:49:02,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1599087835] [2025-03-08 14:49:02,759 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-03-08 14:49:02,760 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2025-03-08 14:49:02,760 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 14:49:02,761 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2025-03-08 14:49:02,761 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=198, Invalid=732, Unknown=0, NotChecked=0, Total=930 [2025-03-08 14:49:02,762 INFO L87 Difference]: Start difference. First operand 74 states and 113 transitions. Second operand has 22 states, 22 states have (on average 3.1363636363636362) internal successors, (69), 21 states have internal predecessors, (69), 9 states have call successors, (31), 6 states have call predecessors, (31), 10 states have return successors, (31), 9 states have call predecessors, (31), 9 states have call successors, (31) [2025-03-08 14:49:03,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:49:03,618 INFO L93 Difference]: Finished difference Result 173 states and 246 transitions. [2025-03-08 14:49:03,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2025-03-08 14:49:03,618 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 3.1363636363636362) internal successors, (69), 21 states have internal predecessors, (69), 9 states have call successors, (31), 6 states have call predecessors, (31), 10 states have return successors, (31), 9 states have call predecessors, (31), 9 states have call successors, (31) Word has length 124 [2025-03-08 14:49:03,619 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:49:03,620 INFO L225 Difference]: With dead ends: 173 [2025-03-08 14:49:03,620 INFO L226 Difference]: Without dead ends: 102 [2025-03-08 14:49:03,621 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 236 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 588 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=699, Invalid=2057, Unknown=0, NotChecked=0, Total=2756 [2025-03-08 14:49:03,622 INFO L435 NwaCegarLoop]: 62 mSDtfsCounter, 344 mSDsluCounter, 235 mSDsCounter, 0 mSdLazyCounter, 469 mSolverCounterSat, 129 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 344 SdHoareTripleChecker+Valid, 297 SdHoareTripleChecker+Invalid, 598 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 129 IncrementalHoareTripleChecker+Valid, 469 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2025-03-08 14:49:03,622 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [344 Valid, 297 Invalid, 598 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [129 Valid, 469 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2025-03-08 14:49:03,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2025-03-08 14:49:03,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 94. [2025-03-08 14:49:03,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 68 states have internal predecessors, (88), 19 states have call successors, (19), 6 states have call predecessors, (19), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-03-08 14:49:03,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 126 transitions. [2025-03-08 14:49:03,636 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 126 transitions. Word has length 124 [2025-03-08 14:49:03,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:49:03,638 INFO L471 AbstractCegarLoop]: Abstraction has 94 states and 126 transitions. [2025-03-08 14:49:03,638 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 3.1363636363636362) internal successors, (69), 21 states have internal predecessors, (69), 9 states have call successors, (31), 6 states have call predecessors, (31), 10 states have return successors, (31), 9 states have call predecessors, (31), 9 states have call successors, (31) [2025-03-08 14:49:03,638 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 126 transitions. [2025-03-08 14:49:03,639 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 126 [2025-03-08 14:49:03,639 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:49:03,639 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:49:03,647 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2025-03-08 14:49:03,839 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,SelfDestructingSolverStorable1 [2025-03-08 14:49:03,839 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:49:03,840 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:49:03,840 INFO L85 PathProgramCache]: Analyzing trace with hash 145215114, now seen corresponding path program 1 times [2025-03-08 14:49:03,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:49:03,840 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287202046] [2025-03-08 14:49:03,840 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:49:03,840 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:49:03,851 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 125 statements into 1 equivalence classes. [2025-03-08 14:49:03,912 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 125 of 125 statements. [2025-03-08 14:49:03,913 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:03,913 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-03-08 14:49:03,917 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1392108602] [2025-03-08 14:49:03,917 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:49:03,918 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:49:03,918 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:49:03,919 INFO L229 MonitoredProcess]: Starting monitored process 4 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:49:03,922 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2025-03-08 14:49:03,962 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 125 statements into 1 equivalence classes. [2025-03-08 14:49:04,244 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 125 of 125 statements. [2025-03-08 14:49:04,244 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:04,244 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:49:04,244 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 14:49:04,260 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 125 statements into 1 equivalence classes. [2025-03-08 14:49:04,276 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 125 of 125 statements. [2025-03-08 14:49:04,276 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:04,277 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:49:04,333 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 14:49:04,333 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 14:49:04,334 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 14:49:04,342 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2025-03-08 14:49:04,535 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:49:04,538 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-03-08 14:49:04,588 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 14:49:04,590 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 02:49:04 BoogieIcfgContainer [2025-03-08 14:49:04,591 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 14:49:04,591 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 14:49:04,591 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 14:49:04,591 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 14:49:04,592 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:48:59" (3/4) ... [2025-03-08 14:49:04,593 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 14:49:04,594 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 14:49:04,594 INFO L158 Benchmark]: Toolchain (without parser) took 6150.02ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 122.8MB in the beginning and 175.8MB in the end (delta: -53.0MB). Peak memory consumption was 12.2MB. Max. memory is 16.1GB. [2025-03-08 14:49:04,594 INFO L158 Benchmark]: CDTParser took 0.31ms. Allocated memory is still 201.3MB. Free memory is still 120.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:49:04,594 INFO L158 Benchmark]: CACSL2BoogieTranslator took 181.04ms. Allocated memory is still 167.8MB. Free memory was 122.8MB in the beginning and 109.0MB in the end (delta: 13.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 14:49:04,594 INFO L158 Benchmark]: Boogie Procedure Inliner took 46.35ms. Allocated memory is still 167.8MB. Free memory was 109.0MB in the beginning and 103.5MB in the end (delta: 5.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 14:49:04,595 INFO L158 Benchmark]: Boogie Preprocessor took 49.12ms. Allocated memory is still 167.8MB. Free memory was 103.5MB in the beginning and 97.5MB in the end (delta: 6.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 14:49:04,595 INFO L158 Benchmark]: IcfgBuilder took 421.06ms. Allocated memory is still 167.8MB. Free memory was 97.5MB in the beginning and 67.3MB in the end (delta: 30.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-08 14:49:04,595 INFO L158 Benchmark]: TraceAbstraction took 5443.99ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 66.6MB in the beginning and 175.9MB in the end (delta: -109.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:49:04,595 INFO L158 Benchmark]: Witness Printer took 2.64ms. Allocated memory is still 234.9MB. Free memory was 175.9MB in the beginning and 175.8MB in the end (delta: 69.2kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:49:04,596 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.31ms. Allocated memory is still 201.3MB. Free memory is still 120.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 181.04ms. Allocated memory is still 167.8MB. Free memory was 122.8MB in the beginning and 109.0MB in the end (delta: 13.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 46.35ms. Allocated memory is still 167.8MB. Free memory was 109.0MB in the beginning and 103.5MB in the end (delta: 5.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 49.12ms. Allocated memory is still 167.8MB. Free memory was 103.5MB in the beginning and 97.5MB in the end (delta: 6.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 421.06ms. Allocated memory is still 167.8MB. Free memory was 97.5MB in the beginning and 67.3MB in the end (delta: 30.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 5443.99ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 66.6MB in the beginning and 175.9MB in the end (delta: -109.3MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 2.64ms. Allocated memory is still 234.9MB. Free memory was 175.9MB in the beginning and 175.8MB in the end (delta: 69.2kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 97, overapproximation of someBinaryFLOATComparisonOperation at line 106, overapproximation of someBinaryFLOATComparisonOperation at line 95, overapproximation of someBinaryFLOATComparisonOperation at line 68, overapproximation of someBinaryArithmeticFLOAToperation at line 43. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed long int var_1_1 = -25; [L23] unsigned char var_1_2 = 0; [L24] signed long int var_1_3 = 1230640054; [L25] signed long int var_1_6 = 1508873667; [L26] unsigned char var_1_7 = 64; [L27] unsigned char var_1_8 = 200; [L28] unsigned char var_1_9 = 16; [L29] unsigned char var_1_10 = 0; [L30] unsigned char var_1_11 = 8; [L31] float var_1_12 = 15.4; [L32] float var_1_16 = 10000000000000.375; [L33] float var_1_17 = 16.4; [L34] float var_1_18 = 8.5; [L35] float var_1_19 = 64.75; [L36] unsigned char var_1_20 = 16; [L37] signed char var_1_22 = 0; [L38] unsigned char var_1_23 = 16; VAL [isInitial=0, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=0, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L110] isInitial = 1 [L111] FCALL initially() [L112] int k_loop; [L113] k_loop = 0 VAL [isInitial=1, k_loop=0, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=0, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L113] COND TRUE k_loop < 1 [L114] FCALL updateLastVariables() [L115] CALL updateVariables() [L73] var_1_2 = __VERIFIER_nondet_uchar() [L74] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L74] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L75] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L75] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1230640054, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L76] var_1_3 = __VERIFIER_nondet_long() [L77] CALL assume_abort_if_not(var_1_3 >= 1073741822) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L77] RET assume_abort_if_not(var_1_3 >= 1073741822) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L78] CALL assume_abort_if_not(var_1_3 <= 2147483646) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L78] RET assume_abort_if_not(var_1_3 <= 2147483646) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1508873667, var_1_7=64, var_1_8=200, var_1_9=16] [L79] var_1_6 = __VERIFIER_nondet_long() [L80] CALL assume_abort_if_not(var_1_6 >= 1073741822) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L80] RET assume_abort_if_not(var_1_6 >= 1073741822) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L81] CALL assume_abort_if_not(var_1_6 <= 2147483646) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L81] RET assume_abort_if_not(var_1_6 <= 2147483646) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=200, var_1_9=16] [L82] var_1_8 = __VERIFIER_nondet_uchar() [L83] CALL assume_abort_if_not(var_1_8 >= 190) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L83] RET assume_abort_if_not(var_1_8 >= 190) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L84] CALL assume_abort_if_not(var_1_8 <= 254) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L84] RET assume_abort_if_not(var_1_8 <= 254) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=16] [L85] var_1_9 = __VERIFIER_nondet_uchar() [L86] CALL assume_abort_if_not(var_1_9 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190] [L86] RET assume_abort_if_not(var_1_9 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190] [L87] CALL assume_abort_if_not(var_1_9 <= 63) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L87] RET assume_abort_if_not(var_1_9 <= 63) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L88] var_1_10 = __VERIFIER_nondet_uchar() [L89] CALL assume_abort_if_not(var_1_10 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L89] RET assume_abort_if_not(var_1_10 >= 0) VAL [isInitial=1, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L90] CALL assume_abort_if_not(var_1_10 <= 32) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L90] RET assume_abort_if_not(var_1_10 <= 32) VAL [isInitial=1, var_1_10=0, var_1_11=8, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L91] var_1_11 = __VERIFIER_nondet_uchar() [L92] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L92] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, var_1_10=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L93] CALL assume_abort_if_not(var_1_11 <= 31) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L93] RET assume_abort_if_not(var_1_11 <= 31) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_17=82/5, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L94] var_1_17 = __VERIFIER_nondet_float() [L95] CALL assume_abort_if_not((var_1_17 >= -461168.6018427382800e+13F && var_1_17 <= -1.0e-20F) || (var_1_17 <= 4611686.018427382800e+12F && var_1_17 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L95] RET assume_abort_if_not((var_1_17 >= -461168.6018427382800e+13F && var_1_17 <= -1.0e-20F) || (var_1_17 <= 4611686.018427382800e+12F && var_1_17 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_18=17/2, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L96] var_1_18 = __VERIFIER_nondet_float() [L97] CALL assume_abort_if_not((var_1_18 >= -461168.6018427382800e+13F && var_1_18 <= -1.0e-20F) || (var_1_18 <= 4611686.018427382800e+12F && var_1_18 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L97] RET assume_abort_if_not((var_1_18 >= -461168.6018427382800e+13F && var_1_18 <= -1.0e-20F) || (var_1_18 <= 4611686.018427382800e+12F && var_1_18 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=16, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L98] var_1_20 = __VERIFIER_nondet_uchar() [L99] CALL assume_abort_if_not(var_1_20 >= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L99] RET assume_abort_if_not(var_1_20 >= 1) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L100] CALL assume_abort_if_not(var_1_20 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L100] RET assume_abort_if_not(var_1_20 <= 126) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L101] CALL assume_abort_if_not(var_1_20 != 127) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L101] RET assume_abort_if_not(var_1_20 != 127) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_16=80000000000003/8, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=64, var_1_8=190, var_1_9=0] [L115] RET updateVariables() [L116] CALL step() [L42] var_1_7 = ((var_1_8 - var_1_9) - (100 - (var_1_10 + var_1_11))) [L43] var_1_16 = (var_1_17 + ((((var_1_18) < 0 ) ? -(var_1_18) : (var_1_18)))) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=16, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L44] COND FALSE !((3886175339u - var_1_20) <= (var_1_9 / var_1_3)) [L51] var_1_23 = var_1_20 VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=-25, var_1_20=1, var_1_22=0, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L53] COND TRUE \read(var_1_2) [L54] var_1_1 = ((var_1_3 - var_1_7) - var_1_7) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=0, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L58] signed long int stepLocal_1 = var_1_9 % (var_1_8 - var_1_20); VAL [isInitial=1, stepLocal_1=0, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=0, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L59] EXPR var_1_7 ^ var_1_10 VAL [isInitial=1, stepLocal_1=0, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=0, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L59] signed long int stepLocal_0 = var_1_7 ^ var_1_10; [L60] COND FALSE !(stepLocal_1 > ((((var_1_23) < 0 ) ? -(var_1_23) : (var_1_23)))) VAL [isInitial=1, stepLocal_0=90, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=0, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L65] COND TRUE (var_1_11 % var_1_20) < var_1_1 [L66] var_1_22 = ((((10) > (var_1_10)) ? (10) : (var_1_10))) VAL [isInitial=1, stepLocal_0=90, var_1_10=0, var_1_11=0, var_1_12=77/5, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=10, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L68] COND TRUE ((((var_1_16) > (var_1_16)) ? (var_1_16) : (var_1_16))) <= (- (var_1_19 / 4.9f)) [L69] var_1_12 = 31.5f VAL [isInitial=1, stepLocal_0=90, var_1_10=0, var_1_11=0, var_1_12=63/2, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=10, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L116] RET step() [L117] CALL, EXPR property() [L106] EXPR ((((var_1_2 ? (var_1_1 == ((signed long int) ((var_1_3 - var_1_7) - var_1_7))) : (var_1_1 == ((signed long int) (((((var_1_3) > ((var_1_6 - var_1_7))) ? (var_1_3) : ((var_1_6 - var_1_7)))) - var_1_7)))) && (var_1_7 == ((unsigned char) ((var_1_8 - var_1_9) - (100 - (var_1_10 + var_1_11)))))) && ((((((var_1_16) > (var_1_16)) ? (var_1_16) : (var_1_16))) <= (- (var_1_19 / 4.9f))) ? (var_1_12 == ((float) 31.5f)) : 1)) && (var_1_16 == ((float) (var_1_17 + ((((var_1_18) < 0 ) ? -(var_1_18) : (var_1_18))))))) && (((var_1_9 % (var_1_8 - var_1_20)) > ((((var_1_23) < 0 ) ? -(var_1_23) : (var_1_23)))) ? (((var_1_3 ^ var_1_23) <= (var_1_7 ^ var_1_10)) ? (var_1_19 == ((float) var_1_17)) : 1) : 1) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=63/2, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=10, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L106-L107] return ((((((var_1_2 ? (var_1_1 == ((signed long int) ((var_1_3 - var_1_7) - var_1_7))) : (var_1_1 == ((signed long int) (((((var_1_3) > ((var_1_6 - var_1_7))) ? (var_1_3) : ((var_1_6 - var_1_7)))) - var_1_7)))) && (var_1_7 == ((unsigned char) ((var_1_8 - var_1_9) - (100 - (var_1_10 + var_1_11)))))) && ((((((var_1_16) > (var_1_16)) ? (var_1_16) : (var_1_16))) <= (- (var_1_19 / 4.9f))) ? (var_1_12 == ((float) 31.5f)) : 1)) && (var_1_16 == ((float) (var_1_17 + ((((var_1_18) < 0 ) ? -(var_1_18) : (var_1_18))))))) && (((var_1_9 % (var_1_8 - var_1_20)) > ((((var_1_23) < 0 ) ? -(var_1_23) : (var_1_23)))) ? (((var_1_3 ^ var_1_23) <= (var_1_7 ^ var_1_10)) ? (var_1_19 == ((float) var_1_17)) : 1) : 1)) && (((var_1_11 % var_1_20) < var_1_1) ? (var_1_22 == ((signed char) ((((10) > (var_1_10)) ? (10) : (var_1_10))))) : 1)) && (((3886175339u - var_1_20) <= (var_1_9 / var_1_3)) ? ((var_1_10 > var_1_7) ? (var_1_23 == ((unsigned char) ((((var_1_20) < ((var_1_8 - var_1_9))) ? (var_1_20) : ((var_1_8 - var_1_9)))))) : (var_1_23 == ((unsigned char) (((((var_1_20) > (64)) ? (var_1_20) : (64))) + var_1_11)))) : (var_1_23 == ((unsigned char) var_1_20))) ; [L117] RET, EXPR property() [L117] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=63/2, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=10, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] [L19] reach_error() VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=63/2, var_1_19=259/4, var_1_1=1073741642, var_1_20=1, var_1_22=10, var_1_23=1, var_1_2=1, var_1_3=1073741822, var_1_6=1073741822, var_1_7=90, var_1_8=190, var_1_9=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 77 locations, 137 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 5.3s, OverallIterations: 3, TraceHistogramMax: 19, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 344 SdHoareTripleChecker+Valid, 0.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 344 mSDsluCounter, 409 SdHoareTripleChecker+Invalid, 0.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 235 mSDsCounter, 129 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 473 IncrementalHoareTripleChecker+Invalid, 602 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 129 mSolverCounterUnsat, 174 mSDtfsCounter, 473 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 361 GetRequests, 310 SyntacticMatches, 0 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 588 ImplicationChecksByTransitivity, 1.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=94occurred in iteration=2, InterpolantAutomatonStates: 26, 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, 8 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.7s SatisfiabilityAnalysisTime, 2.7s InterpolantComputationTime, 746 NumberOfCodeBlocks, 746 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 492 ConstructedInterpolants, 0 QuantifiedInterpolants, 2432 SizeOfPredicates, 5 NumberOfNonLiveVariables, 566 ConjunctsInSsa, 29 ConjunctsInUnsatCore, 4 InterpolantComputations, 1 PerfectInterpolantSequences, 2496/2736 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:49:04,615 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-1loop_file-83.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 f501d64c3ae6a1a87dafc1ae088b3f11ed9b8e87fd0c337a0ab1db4279d00583 --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:49:06,419 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:49:06,494 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 14:49:06,498 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:49:06,498 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:49:06,523 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:49:06,524 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:49:06,524 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:49:06,524 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:49:06,524 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:49:06,524 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:49:06,524 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:49:06,524 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:49:06,524 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:49:06,524 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:49:06,525 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:49:06,525 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:49:06,525 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:49:06,527 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:49:06,527 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:49:06,528 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:49:06,528 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 -> f501d64c3ae6a1a87dafc1ae088b3f11ed9b8e87fd0c337a0ab1db4279d00583 [2025-03-08 14:49:06,760 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:49:06,767 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:49:06,769 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:49:06,770 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:49:06,770 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:49:06,771 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:49:07,964 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27ca8a5a9/d9caedb9fb18408d8c3f78cce8a9ebbf/FLAGf5947fbf0 [2025-03-08 14:49:08,149 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:49:08,151 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:49:08,159 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27ca8a5a9/d9caedb9fb18408d8c3f78cce8a9ebbf/FLAGf5947fbf0 [2025-03-08 14:49:08,173 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27ca8a5a9/d9caedb9fb18408d8c3f78cce8a9ebbf [2025-03-08 14:49:08,176 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:49:08,177 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:49:08,178 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:49:08,178 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:49:08,181 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:49:08,181 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,183 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3f0c4517 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08, skipping insertion in model container [2025-03-08 14:49:08,183 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,198 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:49:08,305 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-1loop_file-83.i[915,928] [2025-03-08 14:49:08,358 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:49:08,375 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:49:08,383 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-1loop_file-83.i[915,928] [2025-03-08 14:49:08,411 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:49:08,428 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:49:08,430 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08 WrapperNode [2025-03-08 14:49:08,430 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:49:08,431 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:49:08,431 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:49:08,431 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:49:08,436 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:49:08" (1/1) ... [2025-03-08 14:49:08,446 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:49:08" (1/1) ... [2025-03-08 14:49:08,467 INFO L138 Inliner]: procedures = 27, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 121 [2025-03-08 14:49:08,467 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:49:08,468 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:49:08,468 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:49:08,468 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:49:08,474 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,474 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,476 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,491 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:49:08,491 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,491 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,502 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,503 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,508 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,509 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,511 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:49:08,516 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:49:08,516 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:49:08,516 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:49:08,517 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (1/1) ... [2025-03-08 14:49:08,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:49:08,538 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:49:08,550 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:49:08,553 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:49:08,571 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:49:08,571 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 14:49:08,571 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:49:08,572 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:49:08,572 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:49:08,572 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:49:08,632 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:49:08,633 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:49:09,734 INFO L? ?]: Removed 13 outVars from TransFormulas that were not future-live. [2025-03-08 14:49:09,735 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:49:09,741 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:49:09,741 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:49:09,742 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:49:09 BoogieIcfgContainer [2025-03-08 14:49:09,742 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:49:09,743 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:49:09,743 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:49:09,748 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:49:09,748 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:49:08" (1/3) ... [2025-03-08 14:49:09,749 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@251ebfa4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:49:09, skipping insertion in model container [2025-03-08 14:49:09,749 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:49:08" (2/3) ... [2025-03-08 14:49:09,750 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@251ebfa4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:49:09, skipping insertion in model container [2025-03-08 14:49:09,750 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:49:09" (3/3) ... [2025-03-08 14:49:09,751 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-1loop_file-83.i [2025-03-08 14:49:09,760 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:49:09,761 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-1loop_file-83.i that has 2 procedures, 55 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:49:09,795 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:49:09,802 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;@1cbe3632, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:49:09,802 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:49:09,805 INFO L276 IsEmpty]: Start isEmpty. Operand has 55 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-03-08 14:49:09,811 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 121 [2025-03-08 14:49:09,811 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:49:09,811 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:49:09,812 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:49:09,815 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:49:09,815 INFO L85 PathProgramCache]: Analyzing trace with hash 517343778, now seen corresponding path program 1 times [2025-03-08 14:49:09,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:49:09,822 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1482464055] [2025-03-08 14:49:09,822 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:49:09,823 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:49:09,823 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:49:09,825 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:49:09,827 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:49:09,893 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 120 statements into 1 equivalence classes. [2025-03-08 14:49:10,172 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 120 of 120 statements. [2025-03-08 14:49:10,173 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:10,173 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:49:10,190 INFO L256 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:49:10,196 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:49:10,242 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 360 proven. 0 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2025-03-08 14:49:10,243 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:49:10,243 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 14:49:10,243 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1482464055] [2025-03-08 14:49:10,244 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1482464055] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:49:10,244 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 14:49:10,244 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 14:49:10,245 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1619414005] [2025-03-08 14:49:10,245 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:49:10,248 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:49:10,248 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 14:49:10,259 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:49:10,259 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:49:10,260 INFO L87 Difference]: Start difference. First operand has 55 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 2 states have call successors, (19) [2025-03-08 14:49:10,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:49:10,279 INFO L93 Difference]: Finished difference Result 107 states and 180 transitions. [2025-03-08 14:49:10,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:49:10,281 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 2 states have call successors, (19) Word has length 120 [2025-03-08 14:49:10,281 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:49:10,284 INFO L225 Difference]: With dead ends: 107 [2025-03-08 14:49:10,285 INFO L226 Difference]: Without dead ends: 52 [2025-03-08 14:49:10,287 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 119 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:49:10,289 INFO L435 NwaCegarLoop]: 80 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, 80 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:49:10,289 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:49:10,297 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2025-03-08 14:49:10,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2025-03-08 14:49:10,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 31 states have (on average 1.2580645161290323) internal successors, (39), 31 states have internal predecessors, (39), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-03-08 14:49:10,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 77 transitions. [2025-03-08 14:49:10,320 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 77 transitions. Word has length 120 [2025-03-08 14:49:10,320 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:49:10,321 INFO L471 AbstractCegarLoop]: Abstraction has 52 states and 77 transitions. [2025-03-08 14:49:10,321 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.0) internal successors, (32), 2 states have internal predecessors, (32), 2 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 2 states have call successors, (19) [2025-03-08 14:49:10,321 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 77 transitions. [2025-03-08 14:49:10,322 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 121 [2025-03-08 14:49:10,322 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:49:10,322 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:49:10,335 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:49:10,523 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:49:10,523 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:49:10,524 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:49:10,524 INFO L85 PathProgramCache]: Analyzing trace with hash -734849089, now seen corresponding path program 1 times [2025-03-08 14:49:10,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:49:10,525 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2012291952] [2025-03-08 14:49:10,525 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:49:10,525 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:49:10,525 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:49:10,528 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:49:10,528 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:49:10,568 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 120 statements into 1 equivalence classes. [2025-03-08 14:49:10,898 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 120 of 120 statements. [2025-03-08 14:49:10,899 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:49:10,899 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:49:10,916 INFO L256 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 31 conjuncts are in the unsatisfiable core [2025-03-08 14:49:10,927 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:50:06,620 WARN L286 SmtUtils]: Spent 11.06s on a formula simplification that was a NOOP. DAG size: 87 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)