./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-63.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_25-while_file-63.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 4464cb734770b9d0fa9d6e2642392f2055c585b5ff2c6b71c083265ca3731e1b --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:34:28,340 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:34:28,390 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 14:34:28,393 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:34:28,394 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:34:28,406 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:34:28,407 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:34:28,407 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:34:28,407 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:34:28,407 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:34:28,408 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:34:28,408 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:34:28,408 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 14:34:28,408 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:34:28,409 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:34:28,409 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:34:28,410 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:34:28,410 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:34:28,411 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 -> 4464cb734770b9d0fa9d6e2642392f2055c585b5ff2c6b71c083265ca3731e1b [2025-03-08 14:34:28,661 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:34:28,670 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:34:28,671 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:34:28,672 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:34:28,673 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:34:28,674 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:29,802 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/656f46feb/406ace108e56486f819c00951b496664/FLAGba9163b53 [2025-03-08 14:34:30,001 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:34:30,002 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:30,008 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/656f46feb/406ace108e56486f819c00951b496664/FLAGba9163b53 [2025-03-08 14:34:30,355 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/656f46feb/406ace108e56486f819c00951b496664 [2025-03-08 14:34:30,356 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:34:30,357 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:34:30,358 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:34:30,358 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:34:30,361 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:34:30,361 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,362 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3571874d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30, skipping insertion in model container [2025-03-08 14:34:30,362 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,374 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:34:30,475 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_25-while_file-63.i[915,928] [2025-03-08 14:34:30,513 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:34:30,524 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:34:30,533 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_25-while_file-63.i[915,928] [2025-03-08 14:34:30,553 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:34:30,568 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:34:30,569 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30 WrapperNode [2025-03-08 14:34:30,569 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:34:30,570 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:34:30,570 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:34:30,570 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:34:30,574 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:34:30" (1/1) ... [2025-03-08 14:34:30,581 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:34:30" (1/1) ... [2025-03-08 14:34:30,608 INFO L138 Inliner]: procedures = 26, calls = 33, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 114 [2025-03-08 14:34:30,612 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:34:30,612 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:34:30,612 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:34:30,612 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:34:30,620 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,621 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,622 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,640 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:34:30,641 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,641 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,644 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,646 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,650 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,650 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,654 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:34:30,655 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:34:30,655 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:34:30,655 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:34:30,655 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (1/1) ... [2025-03-08 14:34:30,659 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:34:30,667 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:34:30,678 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:34:30,680 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:34:30,695 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:34:30,695 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:34:30,695 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:34:30,695 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-08 14:34:30,695 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:34:30,695 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:34:30,746 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:34:30,747 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:34:30,909 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-03-08 14:34:30,909 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:34:30,916 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:34:30,918 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:34:30,918 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:34:30 BoogieIcfgContainer [2025-03-08 14:34:30,918 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:34:30,920 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:34:30,920 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:34:30,923 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:34:30,923 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:34:30" (1/3) ... [2025-03-08 14:34:30,924 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@71dec0df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:34:30, skipping insertion in model container [2025-03-08 14:34:30,924 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:30" (2/3) ... [2025-03-08 14:34:30,924 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@71dec0df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:34:30, skipping insertion in model container [2025-03-08 14:34:30,924 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:34:30" (3/3) ... [2025-03-08 14:34:30,925 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:30,935 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:34:30,937 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-63.i that has 2 procedures, 54 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:34:30,975 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:34:30,982 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;@17a248c2, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:34:30,982 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:34:30,985 INFO L276 IsEmpty]: Start isEmpty. Operand has 54 states, 31 states have (on average 1.2903225806451613) internal successors, (40), 32 states have internal predecessors, (40), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2025-03-08 14:34:30,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-03-08 14:34:30,992 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:34:30,992 INFO L218 NwaCegarLoop]: trace histogram [20, 20, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:34:30,992 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:34:30,996 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:34:30,996 INFO L85 PathProgramCache]: Analyzing trace with hash 869233060, now seen corresponding path program 1 times [2025-03-08 14:34:31,001 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:34:31,001 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1336676160] [2025-03-08 14:34:31,001 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:34:31,001 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:34:31,061 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:31,081 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:31,081 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:31,081 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:34:31,175 INFO L134 CoverageAnalysis]: Checked inductivity of 760 backedges. 0 proven. 38 refuted. 0 times theorem prover too weak. 722 trivial. 0 not checked. [2025-03-08 14:34:31,175 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 14:34:31,175 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1336676160] [2025-03-08 14:34:31,176 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1336676160] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 14:34:31,176 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [139964442] [2025-03-08 14:34:31,176 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:34:31,176 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 14:34:31,176 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:34:31,179 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:34:31,180 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:34:31,235 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:31,284 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:31,284 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:31,284 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:34:31,287 INFO L256 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:34:31,295 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:34:31,320 INFO L134 CoverageAnalysis]: Checked inductivity of 760 backedges. 38 proven. 0 refuted. 0 times theorem prover too weak. 722 trivial. 0 not checked. [2025-03-08 14:34:31,322 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:34:31,322 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [139964442] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:34:31,322 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 14:34:31,322 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 14:34:31,324 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [544802641] [2025-03-08 14:34:31,324 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:34:31,326 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:34:31,326 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 14:34:31,341 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:34:31,342 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:34:31,344 INFO L87 Difference]: Start difference. First operand has 54 states, 31 states have (on average 1.2903225806451613) internal successors, (40), 32 states have internal predecessors, (40), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (20), 2 states have call predecessors, (20), 1 states have return successors, (20), 1 states have call predecessors, (20), 2 states have call successors, (20) [2025-03-08 14:34:31,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:34:31,359 INFO L93 Difference]: Finished difference Result 102 states and 175 transitions. [2025-03-08 14:34:31,359 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:34:31,360 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (20), 2 states have call predecessors, (20), 1 states have return successors, (20), 1 states have call predecessors, (20), 2 states have call successors, (20) Word has length 123 [2025-03-08 14:34:31,360 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:34:31,364 INFO L225 Difference]: With dead ends: 102 [2025-03-08 14:34:31,365 INFO L226 Difference]: Without dead ends: 51 [2025-03-08 14:34:31,367 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 124 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:34:31,368 INFO L435 NwaCegarLoop]: 75 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, 75 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:34:31,369 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:34:31,378 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2025-03-08 14:34:31,400 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2025-03-08 14:34:31,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2025-03-08 14:34:31,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 75 transitions. [2025-03-08 14:34:31,407 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 75 transitions. Word has length 123 [2025-03-08 14:34:31,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:34:31,407 INFO L471 AbstractCegarLoop]: Abstraction has 51 states and 75 transitions. [2025-03-08 14:34:31,408 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 2 states have call successors, (20), 2 states have call predecessors, (20), 1 states have return successors, (20), 1 states have call predecessors, (20), 2 states have call successors, (20) [2025-03-08 14:34:31,408 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 75 transitions. [2025-03-08 14:34:31,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-03-08 14:34:31,411 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:34:31,411 INFO L218 NwaCegarLoop]: trace histogram [20, 20, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:34:31,417 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-03-08 14:34:31,615 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:34:31,615 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:34:31,616 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:34:31,616 INFO L85 PathProgramCache]: Analyzing trace with hash 1269192002, now seen corresponding path program 1 times [2025-03-08 14:34:31,616 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 14:34:31,616 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [184472695] [2025-03-08 14:34:31,616 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:34:31,616 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 14:34:31,636 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:31,723 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:31,725 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:31,725 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:34:31,725 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 14:34:31,731 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:31,770 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:31,770 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:31,771 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 14:34:31,800 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 14:34:31,800 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 14:34:31,801 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 14:34:31,803 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-08 14:34:31,805 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-08 14:34:31,857 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 14:34:31,859 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 02:34:31 BoogieIcfgContainer [2025-03-08 14:34:31,859 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 14:34:31,860 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 14:34:31,860 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 14:34:31,860 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 14:34:31,861 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:34:30" (3/4) ... [2025-03-08 14:34:31,863 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 14:34:31,864 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 14:34:31,865 INFO L158 Benchmark]: Toolchain (without parser) took 1507.34ms. Allocated memory is still 142.6MB. Free memory was 105.3MB in the beginning and 78.6MB in the end (delta: 26.8MB). Peak memory consumption was 30.4MB. Max. memory is 16.1GB. [2025-03-08 14:34:31,865 INFO L158 Benchmark]: CDTParser took 0.47ms. Allocated memory is still 201.3MB. Free memory was 127.0MB in the beginning and 126.7MB in the end (delta: 307.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:34:31,865 INFO L158 Benchmark]: CACSL2BoogieTranslator took 211.43ms. Allocated memory is still 142.6MB. Free memory was 105.3MB in the beginning and 92.7MB in the end (delta: 12.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 14:34:31,865 INFO L158 Benchmark]: Boogie Procedure Inliner took 41.82ms. Allocated memory is still 142.6MB. Free memory was 92.7MB in the beginning and 90.5MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:34:31,865 INFO L158 Benchmark]: Boogie Preprocessor took 41.96ms. Allocated memory is still 142.6MB. Free memory was 90.5MB in the beginning and 88.4MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:34:31,867 INFO L158 Benchmark]: IcfgBuilder took 263.66ms. Allocated memory is still 142.6MB. Free memory was 88.4MB in the beginning and 72.7MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 14:34:31,867 INFO L158 Benchmark]: TraceAbstraction took 939.58ms. Allocated memory is still 142.6MB. Free memory was 72.7MB in the beginning and 79.4MB in the end (delta: -6.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:34:31,867 INFO L158 Benchmark]: Witness Printer took 3.89ms. Allocated memory is still 142.6MB. Free memory was 79.4MB in the beginning and 78.6MB in the end (delta: 795.5kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 14:34:31,869 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.47ms. Allocated memory is still 201.3MB. Free memory was 127.0MB in the beginning and 126.7MB in the end (delta: 307.6kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 211.43ms. Allocated memory is still 142.6MB. Free memory was 105.3MB in the beginning and 92.7MB in the end (delta: 12.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 41.82ms. Allocated memory is still 142.6MB. Free memory was 92.7MB in the beginning and 90.5MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 41.96ms. Allocated memory is still 142.6MB. Free memory was 90.5MB in the beginning and 88.4MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 263.66ms. Allocated memory is still 142.6MB. Free memory was 88.4MB in the beginning and 72.7MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 939.58ms. Allocated memory is still 142.6MB. Free memory was 72.7MB in the beginning and 79.4MB in the end (delta: -6.7MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 3.89ms. Allocated memory is still 142.6MB. Free memory was 79.4MB in the beginning and 78.6MB in the end (delta: 795.5kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 45, overapproximation of someBinaryFLOATComparisonOperation at line 64, overapproximation of someBinaryFLOATComparisonOperation at line 40, overapproximation of someBinaryFLOATComparisonOperation at line 74, overapproximation of someBinaryFLOATComparisonOperation at line 62, overapproximation of someBinaryFLOATComparisonOperation at line 56, overapproximation of someBinaryFLOATComparisonOperation at line 66, overapproximation of someBinaryFLOATComparisonOperation at line 97. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 0; [L23] float var_1_2 = 8.3; [L24] float var_1_3 = 2.25; [L25] float var_1_4 = 10.3; [L26] unsigned char var_1_5 = 1; [L27] unsigned char var_1_6 = 0; [L28] signed long int var_1_7 = 128; [L29] float var_1_8 = 9.8; [L30] signed long int var_1_9 = -256; [L31] unsigned short int var_1_10 = 5; [L32] signed char var_1_11 = 8; [L33] signed long int var_1_12 = 2; [L34] unsigned short int var_1_13 = 32; [L35] unsigned short int var_1_14 = 1; [L36] unsigned short int last_1_var_1_10 = 5; VAL [isInitial=0, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_2=83/10, var_1_3=9/4, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L101] isInitial = 1 [L102] FCALL initially() [L103] COND TRUE 1 [L104] CALL updateLastVariables() [L94] last_1_var_1_10 = var_1_10 VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_2=83/10, var_1_3=9/4, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L104] RET updateLastVariables() [L105] CALL updateVariables() [L61] var_1_2 = __VERIFIER_nondet_float() [L62] CALL assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_3=9/4, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_3=9/4, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L62] RET assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_3=9/4, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L63] var_1_3 = __VERIFIER_nondet_float() [L64] CALL assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L64] RET assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_4=103/10, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L65] var_1_4 = __VERIFIER_nondet_float() [L66] CALL assume_abort_if_not((var_1_4 >= -922337.2036854776000e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L66] RET assume_abort_if_not((var_1_4 >= -922337.2036854776000e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L67] var_1_5 = __VERIFIER_nondet_uchar() [L68] CALL assume_abort_if_not(var_1_5 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L68] RET assume_abort_if_not(var_1_5 >= 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L69] CALL assume_abort_if_not(var_1_5 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L69] RET assume_abort_if_not(var_1_5 <= 1) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L70] var_1_6 = __VERIFIER_nondet_uchar() [L71] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L71] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L72] CALL assume_abort_if_not(var_1_6 <= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L72] RET assume_abort_if_not(var_1_6 <= 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_8=49/5, var_1_9=-256] [L73] var_1_8 = __VERIFIER_nondet_float() [L74] CALL assume_abort_if_not((var_1_8 >= -922337.2036854776000e+13F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=-256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=-256] [L74] RET assume_abort_if_not((var_1_8 >= -922337.2036854776000e+13F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=-256] [L75] var_1_9 = __VERIFIER_nondet_long() [L76] CALL assume_abort_if_not(var_1_9 >= -2147483647) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L76] RET assume_abort_if_not(var_1_9 >= -2147483647) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L77] CALL assume_abort_if_not(var_1_9 <= 2147483646) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L77] RET assume_abort_if_not(var_1_9 <= 2147483646) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=8, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L78] var_1_11 = __VERIFIER_nondet_char() [L79] CALL assume_abort_if_not(var_1_11 >= -128) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L79] RET assume_abort_if_not(var_1_11 >= -128) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L80] CALL assume_abort_if_not(var_1_11 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L80] RET assume_abort_if_not(var_1_11 <= 127) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L81] CALL assume_abort_if_not(var_1_11 != 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L81] RET assume_abort_if_not(var_1_11 != 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=2, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L82] var_1_12 = __VERIFIER_nondet_long() [L83] CALL assume_abort_if_not(var_1_12 >= -2147483648) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L83] RET assume_abort_if_not(var_1_12 >= -2147483648) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L84] CALL assume_abort_if_not(var_1_12 <= 2147483647) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L84] RET assume_abort_if_not(var_1_12 <= 2147483647) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L85] CALL assume_abort_if_not(var_1_12 != 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L85] RET assume_abort_if_not(var_1_12 != 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=32, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L86] var_1_13 = __VERIFIER_nondet_ushort() [L87] CALL assume_abort_if_not(var_1_13 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L87] RET assume_abort_if_not(var_1_13 >= 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L88] CALL assume_abort_if_not(var_1_13 <= 65534) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L88] RET assume_abort_if_not(var_1_13 <= 65534) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=1, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L89] var_1_14 = __VERIFIER_nondet_ushort() [L90] CALL assume_abort_if_not(var_1_14 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L90] RET assume_abort_if_not(var_1_14 >= 0) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L91] CALL assume_abort_if_not(var_1_14 <= 65534) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L91] RET assume_abort_if_not(var_1_14 <= 65534) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=128, var_1_9=2147483646] [L105] RET updateVariables() [L106] CALL step() [L40] COND TRUE var_1_4 <= (((((var_1_2) < (var_1_3)) ? (var_1_2) : (var_1_3))) * var_1_8) [L41] var_1_7 = ((((-200) > (last_1_var_1_10)) ? (-200) : (last_1_var_1_10))) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] [L45] COND FALSE !(var_1_8 > var_1_4) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] [L56] COND TRUE ((((1.1f) < (var_1_2)) ? (1.1f) : (var_1_2))) > (var_1_3 * var_1_4) [L57] var_1_1 = (var_1_5 && var_1_6) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] [L106] RET step() [L107] CALL, EXPR property() [L97-L98] return (((((((1.1f) < (var_1_2)) ? (1.1f) : (var_1_2))) > (var_1_3 * var_1_4)) ? (var_1_1 == ((unsigned char) (var_1_5 && var_1_6))) : 1) && ((var_1_4 <= (((((var_1_2) < (var_1_3)) ? (var_1_2) : (var_1_3))) * var_1_8)) ? (var_1_7 == ((signed long int) ((((-200) > (last_1_var_1_10)) ? (-200) : (last_1_var_1_10))))) : (var_1_7 == ((signed long int) last_1_var_1_10)))) && ((var_1_8 > var_1_4) ? ((! var_1_6) ? (((var_1_9 / ((((var_1_11) > (-64)) ? (var_1_11) : (-64)))) < (var_1_7 / var_1_12)) ? (var_1_10 == ((unsigned short int) var_1_13)) : (var_1_10 == ((unsigned short int) var_1_13))) : (var_1_10 == ((unsigned short int) var_1_14))) : 1) ; VAL [\result=0, isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] [L107] RET, EXPR property() [L107] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] [L19] reach_error() VAL [isInitial=1, last_1_var_1_10=5, var_1_10=5, var_1_11=1, var_1_12=1, var_1_13=65534, var_1_14=0, var_1_1=0, var_1_5=1, var_1_6=0, var_1_7=5, var_1_9=2147483646] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 54 locations, 100 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.8s, OverallIterations: 2, TraceHistogramMax: 20, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 75 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 75 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 124 GetRequests, 124 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=54occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 369 NumberOfCodeBlocks, 369 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 244 ConstructedInterpolants, 0 QuantifiedInterpolants, 244 SizeOfPredicates, 0 NumberOfNonLiveVariables, 273 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 1482/1520 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:34:31,887 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_25-while_file-63.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 4464cb734770b9d0fa9d6e2642392f2055c585b5ff2c6b71c083265ca3731e1b --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 14:34:33,623 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 14:34:33,689 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 14:34:33,693 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 14:34:33,697 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 14:34:33,721 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 14:34:33,722 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 14:34:33,722 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 14:34:33,722 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 14:34:33,722 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 14:34:33,722 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 14:34:33,722 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 14:34:33,722 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 14:34:33,722 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 14:34:33,722 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 14:34:33,722 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 14:34:33,724 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 14:34:33,724 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 14:34:33,724 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 14:34:33,724 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 14:34:33,725 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 14:34:33,726 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 14:34:33,726 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 14:34:33,726 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 14:34:33,726 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 14:34:33,726 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 14:34:33,726 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:34:33,727 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 14:34:33,727 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 14:34:33,728 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 -> 4464cb734770b9d0fa9d6e2642392f2055c585b5ff2c6b71c083265ca3731e1b [2025-03-08 14:34:33,947 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 14:34:33,955 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 14:34:33,957 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 14:34:33,957 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 14:34:33,958 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 14:34:33,960 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:35,114 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/294e6d4f0/3b9ecec7266046bbbabe87c583f96c80/FLAGc4fdcf6a0 [2025-03-08 14:34:35,296 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 14:34:35,298 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:35,305 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/294e6d4f0/3b9ecec7266046bbbabe87c583f96c80/FLAGc4fdcf6a0 [2025-03-08 14:34:35,320 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/294e6d4f0/3b9ecec7266046bbbabe87c583f96c80 [2025-03-08 14:34:35,323 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 14:34:35,324 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 14:34:35,325 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 14:34:35,325 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 14:34:35,329 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 14:34:35,330 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,330 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@b5447eb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35, skipping insertion in model container [2025-03-08 14:34:35,331 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,347 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 14:34:35,451 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_25-while_file-63.i[915,928] [2025-03-08 14:34:35,489 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:34:35,502 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 14:34:35,510 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_25-while_file-63.i[915,928] [2025-03-08 14:34:35,535 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 14:34:35,550 INFO L204 MainTranslator]: Completed translation [2025-03-08 14:34:35,551 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35 WrapperNode [2025-03-08 14:34:35,552 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 14:34:35,552 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 14:34:35,552 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 14:34:35,553 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 14:34:35,557 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:34:35" (1/1) ... [2025-03-08 14:34:35,569 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:34:35" (1/1) ... [2025-03-08 14:34:35,587 INFO L138 Inliner]: procedures = 27, calls = 33, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 111 [2025-03-08 14:34:35,590 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 14:34:35,591 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 14:34:35,591 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 14:34:35,591 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 14:34:35,596 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,597 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,600 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,612 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:34:35,612 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,612 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,618 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,623 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,624 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,629 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,631 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 14:34:35,632 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 14:34:35,632 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 14:34:35,632 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 14:34:35,633 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (1/1) ... [2025-03-08 14:34:35,640 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 14:34:35,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 14:34:35,662 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:34:35,664 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:34:35,684 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 14:34:35,684 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 14:34:35,684 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 14:34:35,684 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 14:34:35,684 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 14:34:35,684 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 14:34:35,743 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 14:34:35,745 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 14:34:36,971 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-03-08 14:34:36,971 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 14:34:36,981 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 14:34:36,981 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 14:34:36,982 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:34:36 BoogieIcfgContainer [2025-03-08 14:34:36,982 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 14:34:36,983 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 14:34:36,983 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 14:34:36,987 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 14:34:36,987 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:34:35" (1/3) ... [2025-03-08 14:34:36,987 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@66d17d14 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:34:36, skipping insertion in model container [2025-03-08 14:34:36,987 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:34:35" (2/3) ... [2025-03-08 14:34:36,987 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@66d17d14 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:34:36, skipping insertion in model container [2025-03-08 14:34:36,988 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:34:36" (3/3) ... [2025-03-08 14:34:36,988 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-63.i [2025-03-08 14:34:36,998 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 14:34:36,999 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-63.i that has 2 procedures, 54 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 14:34:37,033 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 14:34:37,040 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;@4ebee17e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 14:34:37,040 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 14:34:37,043 INFO L276 IsEmpty]: Start isEmpty. Operand has 54 states, 31 states have (on average 1.2903225806451613) internal successors, (40), 32 states have internal predecessors, (40), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2025-03-08 14:34:37,049 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-03-08 14:34:37,050 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:34:37,050 INFO L218 NwaCegarLoop]: trace histogram [20, 20, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:34:37,050 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:34:37,054 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:34:37,054 INFO L85 PathProgramCache]: Analyzing trace with hash 869233060, now seen corresponding path program 1 times [2025-03-08 14:34:37,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:34:37,061 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [182103942] [2025-03-08 14:34:37,061 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:34:37,061 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:34:37,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:34:37,063 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:34:37,065 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:34:37,120 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:37,304 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:37,305 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:37,305 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:34:37,314 INFO L256 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 14:34:37,322 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:34:37,356 INFO L134 CoverageAnalysis]: Checked inductivity of 760 backedges. 38 proven. 0 refuted. 0 times theorem prover too weak. 722 trivial. 0 not checked. [2025-03-08 14:34:37,356 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 14:34:37,357 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 14:34:37,357 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [182103942] [2025-03-08 14:34:37,357 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [182103942] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 14:34:37,357 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 14:34:37,357 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 14:34:37,359 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1059411639] [2025-03-08 14:34:37,359 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 14:34:37,362 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 14:34:37,362 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 14:34:37,375 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 14:34:37,375 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 14:34:37,377 INFO L87 Difference]: Start difference. First operand has 54 states, 31 states have (on average 1.2903225806451613) internal successors, (40), 32 states have internal predecessors, (40), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 1 states have call successors, (20), 1 states have call predecessors, (20), 2 states have return successors, (20), 2 states have call predecessors, (20), 1 states have call successors, (20) [2025-03-08 14:34:37,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 14:34:37,392 INFO L93 Difference]: Finished difference Result 102 states and 175 transitions. [2025-03-08 14:34:37,393 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 14:34:37,393 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 1 states have call successors, (20), 1 states have call predecessors, (20), 2 states have return successors, (20), 2 states have call predecessors, (20), 1 states have call successors, (20) Word has length 123 [2025-03-08 14:34:37,394 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 14:34:37,398 INFO L225 Difference]: With dead ends: 102 [2025-03-08 14:34:37,398 INFO L226 Difference]: Without dead ends: 51 [2025-03-08 14:34:37,400 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 122 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:34:37,402 INFO L435 NwaCegarLoop]: 75 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, 75 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:34:37,402 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 14:34:37,411 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2025-03-08 14:34:37,429 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2025-03-08 14:34:37,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 20 states have call successors, (20), 1 states have call predecessors, (20), 1 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2025-03-08 14:34:37,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 75 transitions. [2025-03-08 14:34:37,438 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 75 transitions. Word has length 123 [2025-03-08 14:34:37,439 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 14:34:37,440 INFO L471 AbstractCegarLoop]: Abstraction has 51 states and 75 transitions. [2025-03-08 14:34:37,440 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.0) internal successors, (28), 2 states have internal predecessors, (28), 1 states have call successors, (20), 1 states have call predecessors, (20), 2 states have return successors, (20), 2 states have call predecessors, (20), 1 states have call successors, (20) [2025-03-08 14:34:37,440 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 75 transitions. [2025-03-08 14:34:37,444 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-03-08 14:34:37,446 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 14:34:37,446 INFO L218 NwaCegarLoop]: trace histogram [20, 20, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:34:37,456 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2025-03-08 14:34:37,647 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:34:37,647 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 14:34:37,648 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 14:34:37,648 INFO L85 PathProgramCache]: Analyzing trace with hash 1269192002, now seen corresponding path program 1 times [2025-03-08 14:34:37,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 14:34:37,648 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1154312124] [2025-03-08 14:34:37,648 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 14:34:37,648 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:34:37,649 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 14:34:37,652 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:34:37,652 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:34:37,686 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-03-08 14:34:37,898 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-03-08 14:34:37,898 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 14:34:37,899 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 14:34:37,906 INFO L256 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 9 conjuncts are in the unsatisfiable core [2025-03-08 14:34:37,911 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 14:35:03,616 WARN L286 SmtUtils]: Spent 6.96s on a formula simplification that was a NOOP. DAG size: 21 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2025-03-08 14:35:28,107 WARN L286 SmtUtils]: Spent 8.84s on a formula simplification that was a NOOP. DAG size: 36 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)