./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e2fb8bed Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a1b9f7d8308e518fe4c72a6190b2fee610f7c5e29f3d722e14bc1423462ff2ad --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 16:02:26,559 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 16:02:26,607 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 16:02:26,612 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 16:02:26,612 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 16:02:26,631 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 16:02:26,633 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 16:02:26,633 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 16:02:26,633 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 16:02:26,633 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 16:02:26,634 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 16:02:26,634 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 16:02:26,634 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 16:02:26,634 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 16:02:26,635 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 16:02:26,635 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 16:02:26,635 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 16:02:26,635 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 16:02:26,635 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 16:02:26,635 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 16:02:26,636 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 16:02:26,636 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 16:02:26,637 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 16:02:26,637 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:02:26,637 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 16:02:26,637 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 16:02:26,637 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 16:02:26,637 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 16:02:26,638 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 16:02:26,638 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 -> a1b9f7d8308e518fe4c72a6190b2fee610f7c5e29f3d722e14bc1423462ff2ad [2025-03-08 16:02:26,861 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 16:02:26,870 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 16:02:26,871 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 16:02:26,873 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 16:02:26,873 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 16:02:26,874 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:28,004 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ced4380f8/53ae35b238124a0fa274dadbd9461eae/FLAG8c73c417c [2025-03-08 16:02:28,249 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 16:02:28,251 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:28,257 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ced4380f8/53ae35b238124a0fa274dadbd9461eae/FLAG8c73c417c [2025-03-08 16:02:28,268 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ced4380f8/53ae35b238124a0fa274dadbd9461eae [2025-03-08 16:02:28,270 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 16:02:28,271 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 16:02:28,272 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 16:02:28,272 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 16:02:28,275 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 16:02:28,276 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,276 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@515ff469 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28, skipping insertion in model container [2025-03-08 16:02:28,276 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,291 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 16:02:28,398 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-03-08 16:02:28,438 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:02:28,446 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 16:02:28,454 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-03-08 16:02:28,476 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:02:28,491 INFO L204 MainTranslator]: Completed translation [2025-03-08 16:02:28,491 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28 WrapperNode [2025-03-08 16:02:28,492 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 16:02:28,492 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 16:02:28,492 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 16:02:28,492 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 16:02:28,497 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,505 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,532 INFO L138 Inliner]: procedures = 26, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 117 [2025-03-08 16:02:28,532 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 16:02:28,533 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 16:02:28,533 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 16:02:28,533 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 16:02:28,539 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,540 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,541 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,552 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 16:02:28,553 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,553 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,556 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,561 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,562 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,563 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,564 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 16:02:28,564 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 16:02:28,565 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 16:02:28,565 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 16:02:28,569 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (1/1) ... [2025-03-08 16:02:28,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:02:28,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:02:28,600 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 16:02:28,602 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 16:02:28,617 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 16:02:28,618 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 16:02:28,618 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 16:02:28,618 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-08 16:02:28,618 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 16:02:28,618 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 16:02:28,671 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 16:02:28,672 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 16:02:28,831 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-03-08 16:02:28,831 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 16:02:28,838 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 16:02:28,838 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 16:02:28,838 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:02:28 BoogieIcfgContainer [2025-03-08 16:02:28,839 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 16:02:28,840 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 16:02:28,840 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 16:02:28,844 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 16:02:28,844 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 04:02:28" (1/3) ... [2025-03-08 16:02:28,845 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f81e0ac and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:02:28, skipping insertion in model container [2025-03-08 16:02:28,845 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:28" (2/3) ... [2025-03-08 16:02:28,846 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f81e0ac and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:02:28, skipping insertion in model container [2025-03-08 16:02:28,846 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:02:28" (3/3) ... [2025-03-08 16:02:28,847 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:28,858 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 16:02:28,860 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-17.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 16:02:28,903 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 16:02:28,913 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;@69b6bb03, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 16:02:28,914 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 16:02:28,917 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-08 16:02:28,924 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-08 16:02:28,924 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:02:28,926 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:02:28,926 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:02:28,931 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:02:28,931 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-03-08 16:02:28,937 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 16:02:28,937 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1185164688] [2025-03-08 16:02:28,938 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:02:28,939 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 16:02:29,008 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:29,020 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:29,020 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:29,020 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:02:29,126 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-03-08 16:02:29,126 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 16:02:29,126 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1185164688] [2025-03-08 16:02:29,127 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1185164688] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 16:02:29,127 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1407548371] [2025-03-08 16:02:29,127 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:02:29,128 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 16:02:29,128 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:02:29,130 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 16:02:29,131 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 16:02:29,188 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:29,231 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:29,231 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:29,231 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:02:29,233 INFO L256 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 16:02:29,238 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 16:02:29,254 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-03-08 16:02:29,254 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 16:02:29,254 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1407548371] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 16:02:29,255 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 16:02:29,255 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 16:02:29,258 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786183468] [2025-03-08 16:02:29,261 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 16:02:29,264 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 16:02:29,264 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 16:02:29,279 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 16:02:29,279 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:02:29,281 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-08 16:02:29,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 16:02:29,301 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-03-08 16:02:29,302 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 16:02:29,303 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) Word has length 104 [2025-03-08 16:02:29,304 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 16:02:29,308 INFO L225 Difference]: With dead ends: 98 [2025-03-08 16:02:29,309 INFO L226 Difference]: Without dead ends: 49 [2025-03-08 16:02:29,311 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 105 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 16:02:29,313 INFO L435 NwaCegarLoop]: 71 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, 71 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 16:02:29,315 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 16:02:29,323 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-03-08 16:02:29,335 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-03-08 16:02:29,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2580645161290323) internal successors, (39), 31 states have internal predecessors, (39), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-08 16:02:29,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-03-08 16:02:29,339 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-03-08 16:02:29,339 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 16:02:29,339 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-03-08 16:02:29,340 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-08 16:02:29,340 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-03-08 16:02:29,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-08 16:02:29,342 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:02:29,342 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:02:29,349 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-08 16:02:29,547 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 16:02:29,547 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:02:29,548 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:02:29,548 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-03-08 16:02:29,549 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 16:02:29,549 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [16330382] [2025-03-08 16:02:29,549 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:02:29,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 16:02:29,581 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:29,652 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:29,655 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:29,655 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 16:02:29,655 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 16:02:29,664 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:29,719 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:29,719 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:29,719 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 16:02:29,750 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 16:02:29,750 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 16:02:29,751 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 16:02:29,753 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-08 16:02:29,755 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-08 16:02:29,822 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 16:02:29,826 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 04:02:29 BoogieIcfgContainer [2025-03-08 16:02:29,826 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 16:02:29,827 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 16:02:29,827 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 16:02:29,827 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 16:02:29,828 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:02:28" (3/4) ... [2025-03-08 16:02:29,830 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 16:02:29,831 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 16:02:29,832 INFO L158 Benchmark]: Toolchain (without parser) took 1560.83ms. Allocated memory is still 142.6MB. Free memory was 113.3MB in the beginning and 90.9MB in the end (delta: 22.4MB). Peak memory consumption was 22.0MB. Max. memory is 16.1GB. [2025-03-08 16:02:29,832 INFO L158 Benchmark]: CDTParser took 0.71ms. Allocated memory is still 226.5MB. Free memory is still 146.9MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:02:29,833 INFO L158 Benchmark]: CACSL2BoogieTranslator took 219.99ms. Allocated memory is still 142.6MB. Free memory was 112.7MB in the beginning and 99.8MB in the end (delta: 13.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 16:02:29,833 INFO L158 Benchmark]: Boogie Procedure Inliner took 39.86ms. Allocated memory is still 142.6MB. Free memory was 99.8MB in the beginning and 98.0MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 16:02:29,833 INFO L158 Benchmark]: Boogie Preprocessor took 31.23ms. Allocated memory is still 142.6MB. Free memory was 98.0MB in the beginning and 95.3MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:02:29,834 INFO L158 Benchmark]: IcfgBuilder took 274.10ms. Allocated memory is still 142.6MB. Free memory was 95.3MB in the beginning and 79.6MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 16:02:29,835 INFO L158 Benchmark]: TraceAbstraction took 985.93ms. Allocated memory is still 142.6MB. Free memory was 79.1MB in the beginning and 90.9MB in the end (delta: -11.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:02:29,835 INFO L158 Benchmark]: Witness Printer took 4.44ms. Allocated memory is still 142.6MB. Free memory was 90.9MB in the beginning and 90.9MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:02:29,836 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.71ms. Allocated memory is still 226.5MB. Free memory is still 146.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 219.99ms. Allocated memory is still 142.6MB. Free memory was 112.7MB in the beginning and 99.8MB in the end (delta: 13.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 39.86ms. Allocated memory is still 142.6MB. Free memory was 99.8MB in the beginning and 98.0MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 31.23ms. Allocated memory is still 142.6MB. Free memory was 98.0MB in the beginning and 95.3MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 274.10ms. Allocated memory is still 142.6MB. Free memory was 95.3MB in the beginning and 79.6MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 985.93ms. Allocated memory is still 142.6MB. Free memory was 79.1MB in the beginning and 90.9MB in the end (delta: -11.8MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 4.44ms. Allocated memory is still 142.6MB. Free memory was 90.9MB in the beginning and 90.9MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryArithmeticDOUBLEoperation at line 53, overapproximation of someBinaryFLOATComparisonOperation at line 103, overapproximation of someBinaryDOUBLEComparisonOperation at line 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 103, overapproximation of someBinaryDOUBLEComparisonOperation at line 81, overapproximation of someBinaryDOUBLEComparisonOperation at line 94, overapproximation of someBinaryDOUBLEComparisonOperation at line 83, overapproximation of someBinaryDOUBLEComparisonOperation at line 66, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 75, overapproximation of someBinaryDOUBLEComparisonOperation at line 77. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] double var_1_1 = 10000000.8; [L23] unsigned char var_1_2 = 0; [L24] double var_1_3 = 16.2; [L25] double var_1_4 = 7.5; [L26] double var_1_5 = 49.6; [L27] signed short int var_1_6 = -10; [L28] double var_1_7 = 4.5; [L29] double var_1_8 = 9.4; [L30] signed short int var_1_9 = 128; [L31] signed short int var_1_10 = 128; [L32] unsigned char var_1_11 = 0; [L33] unsigned long int var_1_12 = 100; [L34] float var_1_13 = 128.4; [L35] double var_1_14 = 3.5; [L36] unsigned char var_1_15 = 16; [L37] unsigned char var_1_16 = 2; [L38] unsigned char last_1_var_1_15 = 16; VAL [isInitial=0, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=0, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L107] isInitial = 1 [L108] FCALL initially() [L109] COND TRUE 1 [L110] CALL updateLastVariables() [L100] last_1_var_1_15 = var_1_15 VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=0, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L110] RET updateLastVariables() [L111] CALL updateVariables() [L71] var_1_2 = __VERIFIER_nondet_uchar() [L72] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L72] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L73] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L73] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L74] var_1_3 = __VERIFIER_nondet_double() [L75] CALL assume_abort_if_not((var_1_3 >= -461168.6018427382800e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 4611686.018427382800e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L75] RET assume_abort_if_not((var_1_3 >= -461168.6018427382800e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 4611686.018427382800e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L76] var_1_4 = __VERIFIER_nondet_double() [L77] CALL assume_abort_if_not((var_1_4 >= -461168.6018427382800e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 4611686.018427382800e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L77] RET assume_abort_if_not((var_1_4 >= -461168.6018427382800e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 4611686.018427382800e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L78] var_1_5 = __VERIFIER_nondet_double() [L79] CALL assume_abort_if_not((var_1_5 >= -230584.3009213691390e+13F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 2305843.009213691390e+12F && var_1_5 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L79] RET assume_abort_if_not((var_1_5 >= -230584.3009213691390e+13F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 2305843.009213691390e+12F && var_1_5 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L80] var_1_7 = __VERIFIER_nondet_double() [L81] CALL assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L81] RET assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L82] var_1_8 = __VERIFIER_nondet_double() [L83] CALL assume_abort_if_not((var_1_8 >= 0.0F && 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_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L83] RET assume_abort_if_not((var_1_8 >= 0.0F && 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_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L84] var_1_9 = __VERIFIER_nondet_short() [L85] CALL assume_abort_if_not(var_1_9 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L85] RET assume_abort_if_not(var_1_9 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L86] CALL assume_abort_if_not(var_1_9 <= 16383) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L86] RET assume_abort_if_not(var_1_9 <= 16383) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L87] var_1_10 = __VERIFIER_nondet_short() [L88] CALL assume_abort_if_not(var_1_10 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L88] RET assume_abort_if_not(var_1_10 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L89] CALL assume_abort_if_not(var_1_10 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L89] RET assume_abort_if_not(var_1_10 <= 32766) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L90] var_1_11 = __VERIFIER_nondet_uchar() [L91] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L91] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L92] CALL assume_abort_if_not(var_1_11 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L92] RET assume_abort_if_not(var_1_11 <= 1) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L93] var_1_14 = __VERIFIER_nondet_double() [L94] CALL assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L94] RET assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L95] var_1_16 = __VERIFIER_nondet_uchar() [L96] CALL assume_abort_if_not(var_1_16 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L96] RET assume_abort_if_not(var_1_16 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L97] CALL assume_abort_if_not(var_1_16 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L97] RET assume_abort_if_not(var_1_16 <= 254) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L111] RET updateVariables() [L112] CALL step() [L42] var_1_12 = last_1_var_1_15 [L43] unsigned long int stepLocal_1 = var_1_12; [L44] signed short int stepLocal_0 = var_1_9; VAL [isInitial=1, last_1_var_1_15=16, stepLocal_0=16383, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L45] COND FALSE !(stepLocal_0 >= var_1_10) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L52] COND TRUE \read(var_1_2) [L53] var_1_1 = (var_1_3 + ((((var_1_4) < ((49.5 + var_1_5))) ? (var_1_4) : ((49.5 + var_1_5))))) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_6=-10, var_1_9=16383] [L55] COND TRUE (- (var_1_7 - var_1_8)) <= var_1_3 [L56] var_1_6 = ((8 + var_1_15) - var_1_15) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_6=8, var_1_9=16383] [L66] COND TRUE var_1_7 < (var_1_8 - var_1_14) [L67] var_1_13 = ((((var_1_4) > (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3))))) ? (var_1_4) : (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3)))))) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L112] RET step() [L113] CALL, EXPR property() [L103-L104] return ((((var_1_2 ? (var_1_1 == ((double) (var_1_3 + ((((var_1_4) < ((49.5 + var_1_5))) ? (var_1_4) : ((49.5 + var_1_5))))))) : 1) && (((- (var_1_7 - var_1_8)) <= var_1_3) ? (var_1_6 == ((signed short int) ((8 + var_1_15) - var_1_15))) : (var_1_2 ? (var_1_11 ? (var_1_6 == ((signed short int) var_1_15)) : 1) : (var_1_6 == ((signed short int) var_1_15))))) && (var_1_12 == ((unsigned long int) last_1_var_1_15))) && ((var_1_7 < (var_1_8 - var_1_14)) ? (var_1_13 == ((float) ((((var_1_4) > (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3))))) ? (var_1_4) : (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3)))))))) : 1)) && ((var_1_9 >= var_1_10) ? (((var_1_9 + last_1_var_1_15) >= var_1_12) ? (var_1_15 == ((unsigned char) var_1_16)) : (var_1_15 == ((unsigned char) var_1_16))) : 1) ; VAL [\result=0, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L113] RET, EXPR property() [L113] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L19] reach_error() VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 52 locations, 92 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.9s, OverallIterations: 2, TraceHistogramMax: 16, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 71 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, 71 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 105 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=52occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 312 NumberOfCodeBlocks, 312 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 206 ConstructedInterpolants, 0 QuantifiedInterpolants, 206 SizeOfPredicates, 0 NumberOfNonLiveVariables, 246 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 930/960 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 16:02:29,852 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_variablewrapping_normal_file-17.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a1b9f7d8308e518fe4c72a6190b2fee610f7c5e29f3d722e14bc1423462ff2ad --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 16:02:31,683 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 16:02:31,757 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 16:02:31,763 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 16:02:31,765 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 16:02:31,786 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 16:02:31,787 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 16:02:31,787 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 16:02:31,788 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 16:02:31,788 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 16:02:31,788 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 16:02:31,789 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 16:02:31,789 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 16:02:31,789 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 16:02:31,789 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 16:02:31,790 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 16:02:31,790 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 16:02:31,791 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 16:02:31,791 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:02:31,792 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 16:02:31,792 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 16:02:31,793 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 16:02:31,793 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 16:02:31,793 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 -> a1b9f7d8308e518fe4c72a6190b2fee610f7c5e29f3d722e14bc1423462ff2ad [2025-03-08 16:02:32,019 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 16:02:32,026 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 16:02:32,029 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 16:02:32,030 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 16:02:32,030 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 16:02:32,031 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:33,191 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a754461f/689befa3564e4fb888cfa01816f55251/FLAG85bf6451e [2025-03-08 16:02:33,403 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 16:02:33,404 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:33,410 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a754461f/689befa3564e4fb888cfa01816f55251/FLAG85bf6451e [2025-03-08 16:02:33,774 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a754461f/689befa3564e4fb888cfa01816f55251 [2025-03-08 16:02:33,777 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 16:02:33,778 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 16:02:33,780 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 16:02:33,780 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 16:02:33,783 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 16:02:33,784 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:33,785 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@146dd90b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33, skipping insertion in model container [2025-03-08 16:02:33,786 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:33,801 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 16:02:33,895 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-03-08 16:02:33,939 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:02:33,949 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 16:02:33,957 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-03-08 16:02:33,973 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:02:33,986 INFO L204 MainTranslator]: Completed translation [2025-03-08 16:02:33,987 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33 WrapperNode [2025-03-08 16:02:33,988 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 16:02:33,989 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 16:02:33,989 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 16:02:33,990 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 16:02:33,994 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,003 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,025 INFO L138 Inliner]: procedures = 27, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 115 [2025-03-08 16:02:34,025 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 16:02:34,026 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 16:02:34,026 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 16:02:34,026 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 16:02:34,034 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,035 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,037 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,055 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 16:02:34,056 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,056 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,066 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,066 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,072 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,073 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,075 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 16:02:34,079 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 16:02:34,079 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 16:02:34,079 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 16:02:34,080 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (1/1) ... [2025-03-08 16:02:34,088 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:02:34,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:02:34,111 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 16:02:34,114 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 16:02:34,134 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 16:02:34,134 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 16:02:34,134 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 16:02:34,134 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 16:02:34,134 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 16:02:34,134 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 16:02:34,201 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 16:02:34,202 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 16:02:39,878 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-03-08 16:02:39,880 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 16:02:39,888 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 16:02:39,889 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 16:02:39,889 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:02:39 BoogieIcfgContainer [2025-03-08 16:02:39,889 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 16:02:39,891 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 16:02:39,891 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 16:02:39,895 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 16:02:39,896 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 04:02:33" (1/3) ... [2025-03-08 16:02:39,896 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e9b7512 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:02:39, skipping insertion in model container [2025-03-08 16:02:39,896 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:02:33" (2/3) ... [2025-03-08 16:02:39,896 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e9b7512 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:02:39, skipping insertion in model container [2025-03-08 16:02:39,896 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:02:39" (3/3) ... [2025-03-08 16:02:39,897 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-17.i [2025-03-08 16:02:39,906 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 16:02:39,907 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-17.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 16:02:39,950 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 16:02:39,958 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;@69dacbe9, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 16:02:39,958 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 16:02:39,961 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-08 16:02:39,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-08 16:02:39,967 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:02:39,967 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:02:39,967 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:02:39,970 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:02:39,971 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-03-08 16:02:39,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 16:02:39,980 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [146278171] [2025-03-08 16:02:39,980 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:02:39,980 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 16:02:39,981 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 16:02:39,983 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 16:02:39,984 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 16:02:40,048 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:40,347 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:40,348 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:40,348 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:02:40,361 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 16:02:40,366 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 16:02:40,391 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 86 proven. 0 refuted. 0 times theorem prover too weak. 394 trivial. 0 not checked. [2025-03-08 16:02:40,391 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 16:02:40,392 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 16:02:40,392 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [146278171] [2025-03-08 16:02:40,392 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [146278171] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 16:02:40,393 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 16:02:40,393 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 16:02:40,394 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [311248083] [2025-03-08 16:02:40,394 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 16:02:40,397 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 16:02:40,397 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 16:02:40,408 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 16:02:40,409 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:02:40,410 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-08 16:02:40,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 16:02:40,442 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-03-08 16:02:40,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 16:02:40,444 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) Word has length 104 [2025-03-08 16:02:40,445 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 16:02:40,448 INFO L225 Difference]: With dead ends: 98 [2025-03-08 16:02:40,448 INFO L226 Difference]: Without dead ends: 49 [2025-03-08 16:02:40,450 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 103 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 16:02:40,452 INFO L435 NwaCegarLoop]: 71 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, 71 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 16:02:40,452 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 16:02:40,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-03-08 16:02:40,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-03-08 16:02:40,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2580645161290323) internal successors, (39), 31 states have internal predecessors, (39), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-08 16:02:40,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-03-08 16:02:40,489 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-03-08 16:02:40,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 16:02:40,491 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-03-08 16:02:40,492 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-08 16:02:40,492 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-03-08 16:02:40,493 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-08 16:02:40,494 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:02:40,495 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:02:40,509 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-03-08 16:02:40,696 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 16:02:40,697 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:02:40,697 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:02:40,697 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-03-08 16:02:40,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 16:02:40,698 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [170955667] [2025-03-08 16:02:40,698 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:02:40,698 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 16:02:40,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 16:02:40,701 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 16:02:40,701 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 16:02:40,748 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-08 16:02:41,119 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-08 16:02:41,120 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:02:41,120 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:02:41,138 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 31 conjuncts are in the unsatisfiable core [2025-03-08 16:02:41,147 INFO L279 TraceCheckSpWp]: Computing forward predicates...