./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 c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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-?-c00e63d-m [2025-02-06 03:00:10,185 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 03:00:10,235 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-02-06 03:00:10,239 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 03:00:10,242 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 03:00:10,263 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 03:00:10,264 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 03:00:10,265 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 03:00:10,265 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 03:00:10,265 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 03:00:10,266 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 03:00:10,266 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 03:00:10,266 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 03:00:10,266 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 03:00:10,267 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 03:00:10,267 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 03:00:10,267 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 03:00:10,267 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 03:00:10,267 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 03:00:10,267 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 03:00:10,268 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 03:00:10,268 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 03:00:10,269 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 03:00:10,269 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 03:00:10,269 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 03:00:10,269 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 03:00:10,269 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 03:00:10,269 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-06 03:00:10,270 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 03:00:10,270 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 03:00:10,270 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 03:00:10,270 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 03:00:10,270 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-jdk21/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-02-06 03:00:10,484 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 03:00:10,491 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 03:00:10,493 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 03:00:10,494 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 03:00:10,495 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 03:00:10,496 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:11,693 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0e2f3e625/7498d3bb2ca84ebbaa94d63d313ad353/FLAG7f713ebd8 [2025-02-06 03:00:11,984 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 03:00:11,985 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:12,006 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0e2f3e625/7498d3bb2ca84ebbaa94d63d313ad353/FLAG7f713ebd8 [2025-02-06 03:00:12,021 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0e2f3e625/7498d3bb2ca84ebbaa94d63d313ad353 [2025-02-06 03:00:12,023 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 03:00:12,024 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 03:00:12,025 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 03:00:12,025 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 03:00:12,029 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 03:00:12,029 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,030 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@45dd29d2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12, skipping insertion in model container [2025-02-06 03:00:12,031 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,046 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 03:00:12,146 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-02-06 03:00:12,181 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 03:00:12,190 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 03:00:12,198 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-02-06 03:00:12,223 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 03:00:12,243 INFO L204 MainTranslator]: Completed translation [2025-02-06 03:00:12,244 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12 WrapperNode [2025-02-06 03:00:12,244 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 03:00:12,245 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 03:00:12,245 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 03:00:12,245 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 03:00:12,249 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,258 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,278 INFO L138 Inliner]: procedures = 26, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 117 [2025-02-06 03:00:12,279 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 03:00:12,279 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 03:00:12,279 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 03:00:12,279 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 03:00:12,285 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,285 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,287 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,302 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-02-06 03:00:12,304 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,304 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,308 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,313 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,314 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,315 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,316 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 03:00:12,320 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 03:00:12,320 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 03:00:12,320 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 03:00:12,321 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (1/1) ... [2025-02-06 03:00:12,325 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 03:00:12,335 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 03:00:12,350 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 03:00:12,357 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 03:00:12,371 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 03:00:12,371 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 03:00:12,371 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 03:00:12,371 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-06 03:00:12,371 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 03:00:12,371 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 03:00:12,424 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 03:00:12,425 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 03:00:12,626 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-02-06 03:00:12,626 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 03:00:12,633 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 03:00:12,637 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 03:00:12,638 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 03:00:12 BoogieIcfgContainer [2025-02-06 03:00:12,638 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 03:00:12,644 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 03:00:12,644 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 03:00:12,648 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 03:00:12,648 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 03:00:12" (1/3) ... [2025-02-06 03:00:12,649 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1aad9570 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 03:00:12, skipping insertion in model container [2025-02-06 03:00:12,649 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:12" (2/3) ... [2025-02-06 03:00:12,649 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1aad9570 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 03:00:12, skipping insertion in model container [2025-02-06 03:00:12,649 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 03:00:12" (3/3) ... [2025-02-06 03:00:12,650 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:12,666 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 03:00:12,667 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-02-06 03:00:12,750 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 03:00:12,766 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;@473e4c31, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 03:00:12,768 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 03:00:12,775 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-02-06 03:00:12,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-02-06 03:00:12,784 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 03:00:12,785 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-02-06 03:00:12,785 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 03:00:12,790 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 03:00:12,791 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-02-06 03:00:12,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 03:00:12,797 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [867556776] [2025-02-06 03:00:12,797 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 03:00:12,797 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 03:00:12,864 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:12,880 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:12,881 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:12,881 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 03:00:13,004 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-02-06 03:00:13,005 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 03:00:13,005 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [867556776] [2025-02-06 03:00:13,006 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [867556776] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 03:00:13,006 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1280391116] [2025-02-06 03:00:13,006 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 03:00:13,006 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 03:00:13,006 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 03:00:13,012 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 03:00:13,015 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-02-06 03:00:13,088 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:13,145 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:13,145 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:13,145 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 03:00:13,147 INFO L256 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 03:00:13,155 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 03:00:13,178 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-02-06 03:00:13,180 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 03:00:13,180 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1280391116] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 03:00:13,180 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-06 03:00:13,180 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-02-06 03:00:13,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1116832927] [2025-02-06 03:00:13,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 03:00:13,185 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 03:00:13,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 03:00:13,200 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 03:00:13,200 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 03:00:13,202 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-02-06 03:00:13,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 03:00:13,223 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-02-06 03:00:13,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 03:00:13,225 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-02-06 03:00:13,225 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 03:00:13,229 INFO L225 Difference]: With dead ends: 98 [2025-02-06 03:00:13,230 INFO L226 Difference]: Without dead ends: 49 [2025-02-06 03:00:13,233 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-02-06 03:00:13,236 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-02-06 03:00:13,237 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-02-06 03:00:13,248 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-02-06 03:00:13,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-02-06 03:00:13,263 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-02-06 03:00:13,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-02-06 03:00:13,268 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-02-06 03:00:13,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 03:00:13,268 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-02-06 03:00:13,268 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-02-06 03:00:13,268 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-02-06 03:00:13,271 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-02-06 03:00:13,271 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 03:00:13,271 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-02-06 03:00:13,278 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-02-06 03:00:13,475 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-02-06 03:00:13,475 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 03:00:13,476 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 03:00:13,476 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-02-06 03:00:13,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 03:00:13,477 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [582594270] [2025-02-06 03:00:13,477 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 03:00:13,481 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 03:00:13,515 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:13,614 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:13,615 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:13,615 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 03:00:13,615 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 03:00:13,624 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:13,684 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:13,684 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:13,684 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 03:00:13,713 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 03:00:13,714 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-06 03:00:13,715 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-06 03:00:13,716 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-06 03:00:13,718 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-02-06 03:00:13,756 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-06 03:00:13,758 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 06.02 03:00:13 BoogieIcfgContainer [2025-02-06 03:00:13,758 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-06 03:00:13,759 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-06 03:00:13,759 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-06 03:00:13,759 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-06 03:00:13,761 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 03:00:12" (3/4) ... [2025-02-06 03:00:13,763 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-06 03:00:13,764 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-06 03:00:13,764 INFO L158 Benchmark]: Toolchain (without parser) took 1740.40ms. Allocated memory is still 142.6MB. Free memory was 109.3MB in the beginning and 87.3MB in the end (delta: 22.0MB). Peak memory consumption was 21.9MB. Max. memory is 16.1GB. [2025-02-06 03:00:13,767 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 201.3MB. Free memory is still 128.3MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 03:00:13,767 INFO L158 Benchmark]: CACSL2BoogieTranslator took 219.52ms. Allocated memory is still 142.6MB. Free memory was 109.3MB in the beginning and 95.9MB in the end (delta: 13.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-06 03:00:13,767 INFO L158 Benchmark]: Boogie Procedure Inliner took 33.92ms. Allocated memory is still 142.6MB. Free memory was 95.9MB in the beginning and 93.7MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 03:00:13,768 INFO L158 Benchmark]: Boogie Preprocessor took 40.23ms. Allocated memory is still 142.6MB. Free memory was 93.7MB in the beginning and 91.4MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 03:00:13,768 INFO L158 Benchmark]: IcfgBuilder took 317.99ms. Allocated memory is still 142.6MB. Free memory was 91.4MB in the beginning and 75.7MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-06 03:00:13,768 INFO L158 Benchmark]: TraceAbstraction took 1114.73ms. Allocated memory is still 142.6MB. Free memory was 75.7MB in the beginning and 87.3MB in the end (delta: -11.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 03:00:13,768 INFO L158 Benchmark]: Witness Printer took 4.68ms. Allocated memory is still 142.6MB. Free memory was 87.3MB in the beginning and 87.3MB in the end (delta: 41.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-06 03:00:13,769 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.18ms. Allocated memory is still 201.3MB. Free memory is still 128.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 219.52ms. Allocated memory is still 142.6MB. Free memory was 109.3MB in the beginning and 95.9MB in the end (delta: 13.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 33.92ms. Allocated memory is still 142.6MB. Free memory was 95.9MB in the beginning and 93.7MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 40.23ms. Allocated memory is still 142.6MB. Free memory was 93.7MB in the beginning and 91.4MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 317.99ms. Allocated memory is still 142.6MB. Free memory was 91.4MB in the beginning and 75.7MB in the end (delta: 15.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 1114.73ms. Allocated memory is still 142.6MB. Free memory was 75.7MB in the beginning and 87.3MB in the end (delta: -11.6MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 4.68ms. Allocated memory is still 142.6MB. Free memory was 87.3MB in the beginning and 87.3MB in the end (delta: 41.6kB). 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 94, overapproximation of someBinaryDOUBLEComparisonOperation at line 77, overapproximation of someBinaryDOUBLEComparisonOperation at line 66, overapproximation of someBinaryDOUBLEComparisonOperation at line 103, overapproximation of someBinaryDOUBLEComparisonOperation at line 75, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 81, overapproximation of someBinaryDOUBLEComparisonOperation at line 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 83. 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, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.0s, 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.2s SatisfiabilityAnalysisTime, 0.2s 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-02-06 03:00:13,787 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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-?-c00e63d-m [2025-02-06 03:00:15,789 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 03:00:15,884 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-02-06 03:00:15,889 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 03:00:15,893 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 03:00:15,913 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 03:00:15,915 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 03:00:15,915 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 03:00:15,915 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 03:00:15,916 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 03:00:15,916 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 03:00:15,916 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 03:00:15,917 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 03:00:15,917 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 03:00:15,917 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 03:00:15,918 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-06 03:00:15,918 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-06 03:00:15,919 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-06 03:00:15,919 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 03:00:15,919 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 03:00:15,919 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 03:00:15,919 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 03:00:15,919 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 03:00:15,920 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-06 03:00:15,920 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-06 03:00:15,921 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 03:00:15,921 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 03:00:15,921 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 03:00:15,921 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 03:00:15,921 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-jdk21/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-02-06 03:00:16,163 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 03:00:16,176 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 03:00:16,177 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 03:00:16,180 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 03:00:16,181 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 03:00:16,182 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:17,446 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1678867e3/2d22db80a30f4ab78c13b530007bb93c/FLAG6b80cfc1b [2025-02-06 03:00:17,654 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 03:00:17,654 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:17,661 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1678867e3/2d22db80a30f4ab78c13b530007bb93c/FLAG6b80cfc1b [2025-02-06 03:00:18,026 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1678867e3/2d22db80a30f4ab78c13b530007bb93c [2025-02-06 03:00:18,028 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 03:00:18,029 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 03:00:18,030 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 03:00:18,030 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 03:00:18,033 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 03:00:18,033 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,034 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5812e66c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18, skipping insertion in model container [2025-02-06 03:00:18,034 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,044 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 03:00:18,142 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-02-06 03:00:18,194 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 03:00:18,209 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 03:00:18,221 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-17.i[913,926] [2025-02-06 03:00:18,235 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 03:00:18,248 INFO L204 MainTranslator]: Completed translation [2025-02-06 03:00:18,249 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18 WrapperNode [2025-02-06 03:00:18,249 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 03:00:18,250 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 03:00:18,250 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 03:00:18,250 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 03:00:18,255 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,263 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,279 INFO L138 Inliner]: procedures = 27, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 115 [2025-02-06 03:00:18,279 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 03:00:18,280 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 03:00:18,280 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 03:00:18,280 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 03:00:18,286 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,287 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,289 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,297 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-02-06 03:00:18,298 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,298 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,304 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,306 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,308 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,309 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,315 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 03:00:18,316 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 03:00:18,316 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 03:00:18,316 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 03:00:18,317 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (1/1) ... [2025-02-06 03:00:18,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 03:00:18,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 03:00:18,340 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 03:00:18,345 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 03:00:18,360 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 03:00:18,360 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-06 03:00:18,360 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-06 03:00:18,360 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-06 03:00:18,360 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 03:00:18,360 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 03:00:18,423 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 03:00:18,424 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 03:00:24,408 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-02-06 03:00:24,408 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 03:00:24,420 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 03:00:24,421 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 03:00:24,421 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 03:00:24 BoogieIcfgContainer [2025-02-06 03:00:24,421 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 03:00:24,423 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 03:00:24,423 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 03:00:24,426 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 03:00:24,427 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 03:00:18" (1/3) ... [2025-02-06 03:00:24,427 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f301b3b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 03:00:24, skipping insertion in model container [2025-02-06 03:00:24,427 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 03:00:18" (2/3) ... [2025-02-06 03:00:24,427 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f301b3b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 03:00:24, skipping insertion in model container [2025-02-06 03:00:24,427 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 03:00:24" (3/3) ... [2025-02-06 03:00:24,428 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-17.i [2025-02-06 03:00:24,438 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 03:00:24,440 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-02-06 03:00:24,481 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 03:00:24,489 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;@63f5ab00, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 03:00:24,489 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-06 03:00:24,492 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-02-06 03:00:24,498 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-02-06 03:00:24,499 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 03:00:24,499 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-02-06 03:00:24,500 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 03:00:24,503 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 03:00:24,504 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-02-06 03:00:24,511 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 03:00:24,512 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1513441930] [2025-02-06 03:00:24,512 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 03:00:24,512 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-02-06 03:00:24,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 03:00:24,514 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/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-02-06 03:00:24,517 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-06 03:00:24,576 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:24,862 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:24,863 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:24,863 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 03:00:24,876 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-06 03:00:24,881 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 03:00:24,903 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 86 proven. 0 refuted. 0 times theorem prover too weak. 394 trivial. 0 not checked. [2025-02-06 03:00:24,903 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 03:00:24,904 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-06 03:00:24,904 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1513441930] [2025-02-06 03:00:24,904 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1513441930] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 03:00:24,904 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 03:00:24,905 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-06 03:00:24,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [426558524] [2025-02-06 03:00:24,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 03:00:24,908 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-06 03:00:24,908 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-06 03:00:24,921 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-06 03:00:24,922 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-06 03:00:24,923 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-02-06 03:00:24,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 03:00:24,958 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-02-06 03:00:24,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-06 03:00:24,960 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-02-06 03:00:24,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-06 03:00:24,963 INFO L225 Difference]: With dead ends: 98 [2025-02-06 03:00:24,963 INFO L226 Difference]: Without dead ends: 49 [2025-02-06 03:00:24,965 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-02-06 03:00:24,967 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-02-06 03:00:24,967 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-02-06 03:00:24,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-02-06 03:00:24,985 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-02-06 03:00:24,985 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-02-06 03:00:24,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-02-06 03:00:24,993 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-02-06 03:00:24,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-06 03:00:24,993 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-02-06 03:00:24,993 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-02-06 03:00:24,993 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-02-06 03:00:24,994 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-02-06 03:00:24,998 INFO L210 NwaCegarLoop]: Found error trace [2025-02-06 03:00:24,999 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-02-06 03:00:25,013 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-06 03:00:25,199 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/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-02-06 03:00:25,200 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-06 03:00:25,200 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 03:00:25,201 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-02-06 03:00:25,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-06 03:00:25,201 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1200619653] [2025-02-06 03:00:25,201 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 03:00:25,201 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-02-06 03:00:25,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-06 03:00:25,203 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/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-02-06 03:00:25,205 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-06 03:00:25,238 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 03:00:25,555 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 03:00:25,556 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 03:00:25,556 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 03:00:25,574 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 31 conjuncts are in the unsatisfiable core [2025-02-06 03:00:25,588 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 03:01:33,760 WARN L286 SmtUtils]: Spent 6.50s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)