./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_normal_file-7.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_codestructure_normal_file-7.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 fd6d26ce296a2f8597276385f832debefab8d820a93071f90453a3b1d517e001 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 20:38:28,397 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 20:38:28,452 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-02-05 20:38:28,460 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 20:38:28,460 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 20:38:28,482 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 20:38:28,483 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 20:38:28,483 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 20:38:28,483 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 20:38:28,483 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 20:38:28,483 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 20:38:28,484 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 20:38:28,484 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-05 20:38:28,484 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 20:38:28,485 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 20:38:28,485 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-05 20:38:28,485 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 20:38:28,486 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 20:38:28,486 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 20:38:28,486 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 20:38:28,486 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 -> fd6d26ce296a2f8597276385f832debefab8d820a93071f90453a3b1d517e001 [2025-02-05 20:38:28,721 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 20:38:28,730 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 20:38:28,731 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 20:38:28,732 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 20:38:28,732 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 20:38:28,734 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_normal_file-7.i [2025-02-05 20:38:29,905 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1947024f1/1738e9cc94194515aee0ff36597e4907/FLAG12fcb2afe [2025-02-05 20:38:30,232 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 20:38:30,234 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_normal_file-7.i [2025-02-05 20:38:30,240 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1947024f1/1738e9cc94194515aee0ff36597e4907/FLAG12fcb2afe [2025-02-05 20:38:30,469 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1947024f1/1738e9cc94194515aee0ff36597e4907 [2025-02-05 20:38:30,471 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 20:38:30,473 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 20:38:30,474 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 20:38:30,474 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 20:38:30,477 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 20:38:30,477 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,478 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@357e2eb0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30, skipping insertion in model container [2025-02-05 20:38:30,478 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,493 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 20:38:30,597 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_codestructure_normal_file-7.i[912,925] [2025-02-05 20:38:30,644 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 20:38:30,653 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 20:38:30,660 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_codestructure_normal_file-7.i[912,925] [2025-02-05 20:38:30,689 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 20:38:30,703 INFO L204 MainTranslator]: Completed translation [2025-02-05 20:38:30,703 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30 WrapperNode [2025-02-05 20:38:30,704 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 20:38:30,704 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 20:38:30,704 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 20:38:30,705 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 20:38:30,708 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,717 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,742 INFO L138 Inliner]: procedures = 26, calls = 37, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 152 [2025-02-05 20:38:30,742 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 20:38:30,742 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 20:38:30,742 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 20:38:30,742 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 20:38:30,748 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,748 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,749 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,758 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-05 20:38:30,758 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,758 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,762 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,762 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,763 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,764 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,765 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 20:38:30,766 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 20:38:30,766 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 20:38:30,766 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 20:38:30,767 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (1/1) ... [2025-02-05 20:38:30,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 20:38:30,782 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 20:38:30,799 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-05 20:38:30,807 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-05 20:38:30,822 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 20:38:30,822 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 20:38:30,822 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 20:38:30,822 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-05 20:38:30,822 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 20:38:30,822 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 20:38:30,879 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 20:38:30,880 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 20:38:31,102 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-02-05 20:38:31,102 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 20:38:31,110 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 20:38:31,111 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 20:38:31,112 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 08:38:31 BoogieIcfgContainer [2025-02-05 20:38:31,112 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 20:38:31,114 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 20:38:31,115 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 20:38:31,118 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 20:38:31,118 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 08:38:30" (1/3) ... [2025-02-05 20:38:31,118 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53341162 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 08:38:31, skipping insertion in model container [2025-02-05 20:38:31,119 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:30" (2/3) ... [2025-02-05 20:38:31,119 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53341162 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 08:38:31, skipping insertion in model container [2025-02-05 20:38:31,119 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 08:38:31" (3/3) ... [2025-02-05 20:38:31,119 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_normal_file-7.i [2025-02-05 20:38:31,129 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 20:38:31,132 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_normal_file-7.i that has 2 procedures, 70 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 20:38:31,176 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 20:38:31,184 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;@10521a52, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 20:38:31,184 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 20:38:31,186 INFO L276 IsEmpty]: Start isEmpty. Operand has 70 states, 43 states have (on average 1.302325581395349) internal successors, (56), 44 states have internal predecessors, (56), 24 states have call successors, (24), 1 states have call predecessors, (24), 1 states have return successors, (24), 24 states have call predecessors, (24), 24 states have call successors, (24) [2025-02-05 20:38:31,193 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 154 [2025-02-05 20:38:31,193 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 20:38:31,194 INFO L218 NwaCegarLoop]: trace histogram [24, 24, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-05 20:38:31,194 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 20:38:31,197 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 20:38:31,197 INFO L85 PathProgramCache]: Analyzing trace with hash -926782356, now seen corresponding path program 1 times [2025-02-05 20:38:31,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-05 20:38:31,201 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605130944] [2025-02-05 20:38:31,202 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 20:38:31,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-05 20:38:31,280 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 153 statements into 1 equivalence classes. [2025-02-05 20:38:31,460 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 153 of 153 statements. [2025-02-05 20:38:31,460 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 20:38:31,461 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 20:38:31,461 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-05 20:38:31,477 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 153 statements into 1 equivalence classes. [2025-02-05 20:38:31,585 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 153 of 153 statements. [2025-02-05 20:38:31,586 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 20:38:31,586 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 20:38:31,636 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-05 20:38:31,637 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-05 20:38:31,638 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-05 20:38:31,639 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-02-05 20:38:31,643 INFO L422 BasicCegarLoop]: Path program histogram: [1] [2025-02-05 20:38:31,733 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-05 20:38:31,736 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 05.02 08:38:31 BoogieIcfgContainer [2025-02-05 20:38:31,736 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-05 20:38:31,737 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-05 20:38:31,737 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-05 20:38:31,737 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-05 20:38:31,738 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 08:38:31" (3/4) ... [2025-02-05 20:38:31,739 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-05 20:38:31,739 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-05 20:38:31,740 INFO L158 Benchmark]: Toolchain (without parser) took 1267.54ms. Allocated memory is still 142.6MB. Free memory was 104.8MB in the beginning and 83.1MB in the end (delta: 21.7MB). Peak memory consumption was 23.4MB. Max. memory is 16.1GB. [2025-02-05 20:38:31,742 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 201.3MB. Free memory is still 126.4MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 20:38:31,742 INFO L158 Benchmark]: CACSL2BoogieTranslator took 230.21ms. Allocated memory is still 142.6MB. Free memory was 104.8MB in the beginning and 90.9MB in the end (delta: 14.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-05 20:38:31,742 INFO L158 Benchmark]: Boogie Procedure Inliner took 37.59ms. Allocated memory is still 142.6MB. Free memory was 90.0MB in the beginning and 87.4MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 20:38:31,743 INFO L158 Benchmark]: Boogie Preprocessor took 23.11ms. Allocated memory is still 142.6MB. Free memory was 87.4MB in the beginning and 84.2MB in the end (delta: 3.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-05 20:38:31,743 INFO L158 Benchmark]: IcfgBuilder took 345.90ms. Allocated memory is still 142.6MB. Free memory was 84.2MB in the beginning and 64.8MB in the end (delta: 19.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-05 20:38:31,743 INFO L158 Benchmark]: TraceAbstraction took 622.06ms. Allocated memory is still 142.6MB. Free memory was 64.0MB in the beginning and 83.1MB in the end (delta: -19.1MB). Peak memory consumption was 40.1MB. Max. memory is 16.1GB. [2025-02-05 20:38:31,744 INFO L158 Benchmark]: Witness Printer took 2.81ms. Allocated memory is still 142.6MB. Free memory was 83.1MB in the beginning and 83.1MB in the end (delta: 41.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 20:38:31,745 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.19ms. Allocated memory is still 201.3MB. Free memory is still 126.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 230.21ms. Allocated memory is still 142.6MB. Free memory was 104.8MB in the beginning and 90.9MB in the end (delta: 14.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 37.59ms. Allocated memory is still 142.6MB. Free memory was 90.0MB in the beginning and 87.4MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 23.11ms. Allocated memory is still 142.6MB. Free memory was 87.4MB in the beginning and 84.2MB in the end (delta: 3.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 345.90ms. Allocated memory is still 142.6MB. Free memory was 84.2MB in the beginning and 64.8MB in the end (delta: 19.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 622.06ms. Allocated memory is still 142.6MB. Free memory was 64.0MB in the beginning and 83.1MB in the end (delta: -19.1MB). Peak memory consumption was 40.1MB. Max. memory is 16.1GB. * Witness Printer took 2.81ms. Allocated memory is still 142.6MB. Free memory was 83.1MB in the beginning and 83.1MB 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 someBinaryFLOATComparisonOperation at line 116, overapproximation of someBinaryFLOATComparisonOperation at line 118, overapproximation of someBinaryFLOATComparisonOperation at line 129, overapproximation of someBinaryFLOATComparisonOperation at line 73, overapproximation of someBinaryFLOATComparisonOperation at line 88, overapproximation of someBinaryFLOATComparisonOperation at line 124, overapproximation of someBinaryFLOATComparisonOperation at line 49, overapproximation of someBinaryFLOATComparisonOperation at line 90, overapproximation of someBinaryFLOATComparisonOperation at line 122, overapproximation of someBinaryFLOATComparisonOperation at line 86, overapproximation of someBinaryFLOATComparisonOperation at line 120, overapproximation of someBinaryArithmeticFLOAToperation at line 74. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned short int var_1_1 = 32; [L23] float var_1_2 = 200.875; [L24] float var_1_3 = 100.25; [L25] float var_1_4 = 99999999.34; [L26] unsigned short int var_1_5 = 10; [L27] unsigned short int var_1_6 = 8; [L28] unsigned long int var_1_7 = 25; [L29] unsigned char var_1_8 = 0; [L30] signed long int var_1_9 = -16; [L31] unsigned short int var_1_10 = 25; [L32] unsigned short int var_1_11 = 10000; [L33] signed short int var_1_12 = -32; [L34] signed char var_1_13 = 4; [L35] signed char var_1_14 = 25; [L36] signed short int var_1_15 = -16; [L37] signed short int var_1_16 = 100; [L38] signed short int var_1_17 = 8; [L39] float var_1_18 = 5.8; [L40] float var_1_19 = 0.19999999999999996; [L41] float var_1_20 = 1.5; [L42] float var_1_21 = 10000000.5; [L43] float var_1_22 = 4.5; [L44] float var_1_23 = 4.25; [L45] signed short int var_1_24 = -16; VAL [isInitial=0, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_2=1607/8, var_1_3=401/4, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L133] isInitial = 1 [L134] FCALL initially() [L135] COND TRUE 1 [L136] FCALL updateLastVariables() [L137] CALL updateVariables() [L85] var_1_2 = __VERIFIER_nondet_float() [L86] CALL assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_3=401/4, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_3=401/4, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L86] RET assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_3=401/4, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L87] var_1_3 = __VERIFIER_nondet_float() [L88] CALL assume_abort_if_not((var_1_3 >= 0.0F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L88] RET assume_abort_if_not((var_1_3 >= 0.0F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_4=4999999967/50, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L89] var_1_4 = __VERIFIER_nondet_float() [L90] CALL assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L90] RET assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=10, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L91] var_1_5 = __VERIFIER_nondet_ushort() [L92] CALL assume_abort_if_not(var_1_5 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L92] RET assume_abort_if_not(var_1_5 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L93] CALL assume_abort_if_not(var_1_5 <= 65534) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L93] RET assume_abort_if_not(var_1_5 <= 65534) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=8, var_1_7=25, var_1_8=0, var_1_9=-16] [L94] var_1_6 = __VERIFIER_nondet_ushort() [L95] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L95] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L96] CALL assume_abort_if_not(var_1_6 <= 65534) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L96] RET assume_abort_if_not(var_1_6 <= 65534) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L97] var_1_8 = __VERIFIER_nondet_uchar() [L98] CALL assume_abort_if_not(var_1_8 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_9=-16] [L98] RET assume_abort_if_not(var_1_8 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_9=-16] [L99] CALL assume_abort_if_not(var_1_8 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L99] RET assume_abort_if_not(var_1_8 <= 1) VAL [isInitial=1, var_1_10=25, var_1_11=10000, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L100] var_1_11 = __VERIFIER_nondet_ushort() [L101] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L101] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, var_1_10=25, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L102] CALL assume_abort_if_not(var_1_11 <= 32767) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L102] RET assume_abort_if_not(var_1_11 <= 32767) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=4, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L103] var_1_13 = __VERIFIER_nondet_char() [L104] CALL assume_abort_if_not(var_1_13 >= -1) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L104] RET assume_abort_if_not(var_1_13 >= -1) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L105] CALL assume_abort_if_not(var_1_13 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L105] RET assume_abort_if_not(var_1_13 <= 127) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=25, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L106] var_1_14 = __VERIFIER_nondet_char() [L107] CALL assume_abort_if_not(var_1_14 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L107] RET assume_abort_if_not(var_1_14 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L108] CALL assume_abort_if_not(var_1_14 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L108] RET assume_abort_if_not(var_1_14 <= 127) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=100, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L109] var_1_16 = __VERIFIER_nondet_short() [L110] CALL assume_abort_if_not(var_1_16 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L110] RET assume_abort_if_not(var_1_16 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L111] CALL assume_abort_if_not(var_1_16 <= 16383) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L111] RET assume_abort_if_not(var_1_16 <= 16383) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=8, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L112] var_1_17 = __VERIFIER_nondet_short() [L113] CALL assume_abort_if_not(var_1_17 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L113] RET assume_abort_if_not(var_1_17 >= 0) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L114] CALL assume_abort_if_not(var_1_17 <= 16383) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L114] RET assume_abort_if_not(var_1_17 <= 16383) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_19=4999999999999999/25000000000000000, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L115] var_1_19 = __VERIFIER_nondet_float() [L116] CALL assume_abort_if_not((var_1_19 >= -461168.6018427382800e+13F && var_1_19 <= -1.0e-20F) || (var_1_19 <= 4611686.018427382800e+12F && var_1_19 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L116] RET assume_abort_if_not((var_1_19 >= -461168.6018427382800e+13F && var_1_19 <= -1.0e-20F) || (var_1_19 <= 4611686.018427382800e+12F && var_1_19 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_20=3/2, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L117] var_1_20 = __VERIFIER_nondet_float() [L118] CALL assume_abort_if_not((var_1_20 >= -461168.6018427382800e+13F && var_1_20 <= -1.0e-20F) || (var_1_20 <= 4611686.018427382800e+12F && var_1_20 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L118] RET assume_abort_if_not((var_1_20 >= -461168.6018427382800e+13F && var_1_20 <= -1.0e-20F) || (var_1_20 <= 4611686.018427382800e+12F && var_1_20 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_21=20000001/2, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L119] var_1_21 = __VERIFIER_nondet_float() [L120] CALL assume_abort_if_not((var_1_21 >= 0.0F && var_1_21 <= -1.0e-20F) || (var_1_21 <= 9223372.036854765600e+12F && var_1_21 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L120] RET assume_abort_if_not((var_1_21 >= 0.0F && var_1_21 <= -1.0e-20F) || (var_1_21 <= 9223372.036854765600e+12F && var_1_21 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_22=9/2, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L121] var_1_22 = __VERIFIER_nondet_float() [L122] CALL assume_abort_if_not((var_1_22 >= 0.0F && var_1_22 <= -1.0e-20F) || (var_1_22 <= 9223372.036854765600e+12F && var_1_22 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L122] RET assume_abort_if_not((var_1_22 >= 0.0F && var_1_22 <= -1.0e-20F) || (var_1_22 <= 9223372.036854765600e+12F && var_1_22 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_23=17/4, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L123] var_1_23 = __VERIFIER_nondet_float() [L124] CALL assume_abort_if_not((var_1_23 >= -922337.2036854765600e+13F && var_1_23 <= -1.0e-20F) || (var_1_23 <= 9223372.036854765600e+12F && var_1_23 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L124] RET assume_abort_if_not((var_1_23 >= -922337.2036854765600e+13F && var_1_23 <= -1.0e-20F) || (var_1_23 <= 9223372.036854765600e+12F && var_1_23 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=32, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L137] RET updateVariables() [L138] CALL step() [L49] COND FALSE !(var_1_2 <= (var_1_3 - var_1_4)) [L52] var_1_1 = ((((var_1_5) > (var_1_6)) ? (var_1_5) : (var_1_6))) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L54] COND FALSE !(\read(var_1_8)) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=-16] [L59] var_1_9 = ((((var_1_5) > (var_1_6)) ? (var_1_5) : (var_1_6))) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L60] COND FALSE !(var_1_6 < 10) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=-32, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L65] COND FALSE !((var_1_13 - var_1_14) > (var_1_7 + var_1_11)) [L70] var_1_12 = var_1_14 VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-16, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L72] var_1_15 = (var_1_14 - (((((var_1_16 + var_1_17)) > (4)) ? ((var_1_16 + var_1_17)) : (4)))) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_18=29/5, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L73] COND TRUE var_1_4 > var_1_2 [L74] var_1_18 = (((((var_1_19 + var_1_20) < 0 ) ? -(var_1_19 + var_1_20) : (var_1_19 + var_1_20))) - var_1_21) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_1=65534, var_1_24=-16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L82] var_1_24 = 16 VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_1=65534, var_1_24=16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L138] RET step() [L139] CALL, EXPR property() [L129-L130] return ((((((((var_1_2 <= (var_1_3 - var_1_4)) ? (var_1_1 == ((unsigned short int) var_1_5)) : (var_1_1 == ((unsigned short int) ((((var_1_5) > (var_1_6)) ? (var_1_5) : (var_1_6)))))) && (var_1_8 ? ((var_1_5 < 16) ? (var_1_7 == ((unsigned long int) (var_1_6 + var_1_1))) : 1) : 1)) && (var_1_9 == ((signed long int) ((((var_1_5) > (var_1_6)) ? (var_1_5) : (var_1_6)))))) && ((var_1_6 < 10) ? ((var_1_5 < (56016 - var_1_11)) ? (var_1_10 == ((unsigned short int) var_1_5)) : 1) : 1)) && (((var_1_13 - var_1_14) > (var_1_7 + var_1_11)) ? ((! var_1_8) ? (var_1_12 == ((signed short int) var_1_13)) : 1) : (var_1_12 == ((signed short int) var_1_14)))) && (var_1_15 == ((signed short int) (var_1_14 - (((((var_1_16 + var_1_17)) > (4)) ? ((var_1_16 + var_1_17)) : (4))))))) && ((var_1_4 > var_1_2) ? (var_1_18 == ((float) (((((var_1_19 + var_1_20) < 0 ) ? -(var_1_19 + var_1_20) : (var_1_19 + var_1_20))) - var_1_21))) : ((! ((var_1_17 - var_1_11) < 128)) ? (var_1_18 == ((float) ((((var_1_21) < 0 ) ? -(var_1_21) : (var_1_21))))) : (var_1_18 == ((float) ((((((((9.75f) > (var_1_19)) ? (9.75f) : (var_1_19)))) < ((((((var_1_21 - var_1_22)) > (((((var_1_20) > (var_1_23)) ? (var_1_20) : (var_1_23))))) ? ((var_1_21 - var_1_22)) : (((((var_1_20) > (var_1_23)) ? (var_1_20) : (var_1_23)))))))) ? (((((9.75f) > (var_1_19)) ? (9.75f) : (var_1_19)))) : ((((((var_1_21 - var_1_22)) > (((((var_1_20) > (var_1_23)) ? (var_1_20) : (var_1_23))))) ? ((var_1_21 - var_1_22)) : (((((var_1_20) > (var_1_23)) ? (var_1_20) : (var_1_23)))))))))))))) && (var_1_24 == ((signed short int) 16)) ; VAL [\result=0, isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_1=65534, var_1_24=16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L139] RET, EXPR property() [L139] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_1=65534, var_1_24=16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] [L19] reach_error() VAL [isInitial=1, var_1_10=25, var_1_11=0, var_1_12=0, var_1_13=1, var_1_14=0, var_1_15=-32766, var_1_16=16383, var_1_17=16383, var_1_1=65534, var_1_24=16, var_1_5=65534, var_1_6=65534, var_1_7=25, var_1_8=0, var_1_9=65534] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 70 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.5s, OverallIterations: 1, TraceHistogramMax: 24, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=70occurred in iteration=0, InterpolantAutomatonStates: 0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 153 NumberOfCodeBlocks, 153 NumberOfCodeBlocksAsserted, 1 NumberOfCheckSat, 0 ConstructedInterpolants, 0 QuantifiedInterpolants, 0 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 0 InterpolantComputations, 0 PerfectInterpolantSequences, 0/0 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-05 20:38:31,762 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, 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_codestructure_normal_file-7.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 fd6d26ce296a2f8597276385f832debefab8d820a93071f90453a3b1d517e001 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 20:38:33,607 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 20:38:33,685 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-02-05 20:38:33,691 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 20:38:33,692 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 20:38:33,756 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 20:38:33,757 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 20:38:33,758 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 20:38:33,758 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 20:38:33,759 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 20:38:33,759 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 20:38:33,759 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 20:38:33,760 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 20:38:33,762 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 20:38:33,763 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 20:38:33,763 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 20:38:33,764 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 20:38:33,764 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 20:38:33,764 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 20:38:33,764 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 -> fd6d26ce296a2f8597276385f832debefab8d820a93071f90453a3b1d517e001 [2025-02-05 20:38:34,006 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 20:38:34,011 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 20:38:34,012 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 20:38:34,013 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 20:38:34,013 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 20:38:34,014 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_normal_file-7.i [2025-02-05 20:38:35,155 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/8f8dc7814/b57c49ac509c4d03bfc1d50c7c6014cc/FLAGa7755c4e8 [2025-02-05 20:38:35,379 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 20:38:35,380 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_normal_file-7.i [2025-02-05 20:38:35,386 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/8f8dc7814/b57c49ac509c4d03bfc1d50c7c6014cc/FLAGa7755c4e8 [2025-02-05 20:38:35,721 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/8f8dc7814/b57c49ac509c4d03bfc1d50c7c6014cc [2025-02-05 20:38:35,723 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 20:38:35,724 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 20:38:35,725 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 20:38:35,725 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 20:38:35,728 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 20:38:35,728 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,729 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1396a23b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35, skipping insertion in model container [2025-02-05 20:38:35,729 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,742 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 20:38:35,832 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_codestructure_normal_file-7.i[912,925] [2025-02-05 20:38:35,869 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 20:38:35,881 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 20:38:35,888 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_codestructure_normal_file-7.i[912,925] [2025-02-05 20:38:35,904 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 20:38:35,914 INFO L204 MainTranslator]: Completed translation [2025-02-05 20:38:35,915 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35 WrapperNode [2025-02-05 20:38:35,915 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 20:38:35,915 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 20:38:35,916 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 20:38:35,916 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 20:38:35,919 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,931 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,953 INFO L138 Inliner]: procedures = 27, calls = 37, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 148 [2025-02-05 20:38:35,953 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 20:38:35,954 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 20:38:35,954 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 20:38:35,954 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 20:38:35,959 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,960 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,963 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,974 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-05 20:38:35,974 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,976 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,986 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,987 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,993 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,993 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:35,995 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 20:38:35,999 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 20:38:35,999 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 20:38:35,999 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 20:38:35,999 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (1/1) ... [2025-02-05 20:38:36,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 20:38:36,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 20:38:36,026 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-05 20:38:36,031 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-05 20:38:36,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 20:38:36,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-05 20:38:36,047 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 20:38:36,047 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 20:38:36,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 20:38:36,047 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 20:38:36,109 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 20:38:36,111 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 20:38:37,235 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-02-05 20:38:37,235 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 20:38:37,242 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 20:38:37,242 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 20:38:37,242 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 08:38:37 BoogieIcfgContainer [2025-02-05 20:38:37,242 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 20:38:37,244 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 20:38:37,244 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 20:38:37,247 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 20:38:37,247 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 08:38:35" (1/3) ... [2025-02-05 20:38:37,247 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f3cea6c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 08:38:37, skipping insertion in model container [2025-02-05 20:38:37,247 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 08:38:35" (2/3) ... [2025-02-05 20:38:37,248 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f3cea6c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 08:38:37, skipping insertion in model container [2025-02-05 20:38:37,248 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 08:38:37" (3/3) ... [2025-02-05 20:38:37,248 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_normal_file-7.i [2025-02-05 20:38:37,257 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 20:38:37,258 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_normal_file-7.i that has 2 procedures, 70 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 20:38:37,288 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 20:38:37,302 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;@38ed9ccf, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 20:38:37,302 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 20:38:37,304 INFO L276 IsEmpty]: Start isEmpty. Operand has 70 states, 43 states have (on average 1.302325581395349) internal successors, (56), 44 states have internal predecessors, (56), 24 states have call successors, (24), 1 states have call predecessors, (24), 1 states have return successors, (24), 24 states have call predecessors, (24), 24 states have call successors, (24) [2025-02-05 20:38:37,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 154 [2025-02-05 20:38:37,312 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 20:38:37,316 INFO L218 NwaCegarLoop]: trace histogram [24, 24, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-05 20:38:37,316 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 20:38:37,319 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 20:38:37,319 INFO L85 PathProgramCache]: Analyzing trace with hash -926782356, now seen corresponding path program 1 times [2025-02-05 20:38:37,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-05 20:38:37,335 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [266517449] [2025-02-05 20:38:37,335 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 20:38:37,335 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-05 20:38:37,335 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-05 20:38:37,341 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-05 20:38:37,363 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-05 20:38:37,435 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 153 statements into 1 equivalence classes. [2025-02-05 20:38:37,718 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 153 of 153 statements. [2025-02-05 20:38:37,718 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 20:38:37,719 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 20:38:37,731 INFO L256 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 26 conjuncts are in the unsatisfiable core [2025-02-05 20:38:37,743 INFO L279 TraceCheckSpWp]: Computing forward predicates...