./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 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_steplocals_file-30.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 d10cd0607171a465ff2ca1ce03aa847fdf912d87f8dfda1b118440a87d224724 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 08:52:34,913 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 08:52:34,971 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 08:52:34,975 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 08:52:34,975 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 08:52:34,992 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 08:52:34,992 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 08:52:34,993 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 08:52:34,993 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 08:52:34,993 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 08:52:34,993 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 08:52:34,993 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 08:52:34,993 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 08:52:34,993 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 08:52:34,994 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 08:52:34,994 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 08:52:34,995 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:34,995 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:34,995 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 08:52:34,995 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 08:52:34,995 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 -> d10cd0607171a465ff2ca1ce03aa847fdf912d87f8dfda1b118440a87d224724 [2025-01-09 08:52:35,257 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 08:52:35,263 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 08:52:35,266 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 08:52:35,267 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 08:52:35,267 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 08:52:35,268 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:36,504 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/85122acf8/09f26f9740bf4a03b0ea4e6550c40223/FLAG178487a4f [2025-01-09 08:52:36,789 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 08:52:36,790 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:36,796 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/85122acf8/09f26f9740bf4a03b0ea4e6550c40223/FLAG178487a4f [2025-01-09 08:52:37,073 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/85122acf8/09f26f9740bf4a03b0ea4e6550c40223 [2025-01-09 08:52:37,075 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 08:52:37,076 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 08:52:37,077 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 08:52:37,077 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 08:52:37,080 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 08:52:37,080 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,081 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47167c96 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37, skipping insertion in model container [2025-01-09 08:52:37,081 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,092 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 08:52:37,193 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_steplocals_file-30.i[917,930] [2025-01-09 08:52:37,237 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 08:52:37,252 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 08:52:37,268 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_steplocals_file-30.i[917,930] [2025-01-09 08:52:37,298 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 08:52:37,312 INFO L204 MainTranslator]: Completed translation [2025-01-09 08:52:37,313 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37 WrapperNode [2025-01-09 08:52:37,313 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 08:52:37,314 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 08:52:37,314 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 08:52:37,314 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 08:52:37,318 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,323 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,340 INFO L138 Inliner]: procedures = 26, calls = 31, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 160 [2025-01-09 08:52:37,340 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 08:52:37,341 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 08:52:37,341 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 08:52:37,341 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 08:52:37,346 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,347 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,348 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,364 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-01-09 08:52:37,364 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,364 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,371 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,371 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,374 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,375 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,378 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,382 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 08:52:37,382 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 08:52:37,382 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 08:52:37,383 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 08:52:37,383 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (1/1) ... [2025-01-09 08:52:37,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:37,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 08:52:37,414 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-01-09 08:52:37,419 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-01-09 08:52:37,436 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 08:52:37,436 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 08:52:37,436 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 08:52:37,436 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 08:52:37,437 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 08:52:37,437 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 08:52:37,498 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 08:52:37,499 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 08:52:37,709 INFO L? ?]: Removed 16 outVars from TransFormulas that were not future-live. [2025-01-09 08:52:37,710 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 08:52:37,716 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 08:52:37,716 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 08:52:37,717 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 08:52:37 BoogieIcfgContainer [2025-01-09 08:52:37,717 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 08:52:37,718 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 08:52:37,718 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 08:52:37,722 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 08:52:37,722 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 08:52:37" (1/3) ... [2025-01-09 08:52:37,722 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@bd4ab5c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 08:52:37, skipping insertion in model container [2025-01-09 08:52:37,722 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:37" (2/3) ... [2025-01-09 08:52:37,722 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@bd4ab5c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 08:52:37, skipping insertion in model container [2025-01-09 08:52:37,723 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 08:52:37" (3/3) ... [2025-01-09 08:52:37,723 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:37,733 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 08:52:37,734 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_steplocals_file-30.i that has 2 procedures, 71 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 08:52:37,780 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 08:52:37,787 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;@cc459ff, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 08:52:37,788 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 08:52:37,790 INFO L276 IsEmpty]: Start isEmpty. Operand has 71 states, 50 states have (on average 1.44) internal successors, (72), 51 states have internal predecessors, (72), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-01-09 08:52:37,796 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2025-01-09 08:52:37,797 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 08:52:37,798 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 08:52:37,798 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 08:52:37,802 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 08:52:37,803 INFO L85 PathProgramCache]: Analyzing trace with hash 661621487, now seen corresponding path program 1 times [2025-01-09 08:52:37,807 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 08:52:37,808 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [488183780] [2025-01-09 08:52:37,809 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:52:37,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 08:52:37,890 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 122 statements into 1 equivalence classes. [2025-01-09 08:52:37,966 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 122 of 122 statements. [2025-01-09 08:52:37,966 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:37,966 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 08:52:38,473 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 12 proven. 39 refuted. 0 times theorem prover too weak. 561 trivial. 0 not checked. [2025-01-09 08:52:38,474 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 08:52:38,475 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [488183780] [2025-01-09 08:52:38,476 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [488183780] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 08:52:38,476 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1997761521] [2025-01-09 08:52:38,476 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:52:38,476 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 08:52:38,476 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 08:52:38,481 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-09 08:52:38,488 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-01-09 08:52:38,565 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 122 statements into 1 equivalence classes. [2025-01-09 08:52:38,617 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 122 of 122 statements. [2025-01-09 08:52:38,617 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:38,617 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 08:52:38,620 INFO L256 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 13 conjuncts are in the unsatisfiable core [2025-01-09 08:52:38,629 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 08:52:38,887 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 248 proven. 72 refuted. 0 times theorem prover too weak. 292 trivial. 0 not checked. [2025-01-09 08:52:38,888 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 08:52:39,121 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 12 proven. 39 refuted. 0 times theorem prover too weak. 561 trivial. 0 not checked. [2025-01-09 08:52:39,124 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1997761521] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 08:52:39,125 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-09 08:52:39,125 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 9, 6] total 13 [2025-01-09 08:52:39,126 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1419465313] [2025-01-09 08:52:39,127 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-09 08:52:39,129 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2025-01-09 08:52:39,130 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 08:52:39,149 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2025-01-09 08:52:39,153 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=114, Unknown=0, NotChecked=0, Total=156 [2025-01-09 08:52:39,155 INFO L87 Difference]: Start difference. First operand has 71 states, 50 states have (on average 1.44) internal successors, (72), 51 states have internal predecessors, (72), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 13 states have internal predecessors, (63), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) [2025-01-09 08:52:39,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 08:52:39,549 INFO L93 Difference]: Finished difference Result 198 states and 328 transitions. [2025-01-09 08:52:39,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2025-01-09 08:52:39,551 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 13 states have internal predecessors, (63), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) Word has length 122 [2025-01-09 08:52:39,552 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 08:52:39,556 INFO L225 Difference]: With dead ends: 198 [2025-01-09 08:52:39,556 INFO L226 Difference]: Without dead ends: 130 [2025-01-09 08:52:39,558 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 267 GetRequests, 239 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 126 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=215, Invalid=541, Unknown=0, NotChecked=0, Total=756 [2025-01-09 08:52:39,560 INFO L435 NwaCegarLoop]: 89 mSDtfsCounter, 362 mSDsluCounter, 207 mSDsCounter, 0 mSdLazyCounter, 237 mSolverCounterSat, 119 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 363 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 356 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 119 IncrementalHoareTripleChecker+Valid, 237 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2025-01-09 08:52:39,560 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [363 Valid, 296 Invalid, 356 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [119 Valid, 237 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2025-01-09 08:52:39,570 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2025-01-09 08:52:39,589 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 113. [2025-01-09 08:52:39,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 86 states have (on average 1.3604651162790697) internal successors, (117), 87 states have internal predecessors, (117), 22 states have call successors, (22), 4 states have call predecessors, (22), 4 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2025-01-09 08:52:39,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 161 transitions. [2025-01-09 08:52:39,598 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 161 transitions. Word has length 122 [2025-01-09 08:52:39,598 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 08:52:39,598 INFO L471 AbstractCegarLoop]: Abstraction has 113 states and 161 transitions. [2025-01-09 08:52:39,601 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 13 states have internal predecessors, (63), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) [2025-01-09 08:52:39,601 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 161 transitions. [2025-01-09 08:52:39,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2025-01-09 08:52:39,604 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 08:52:39,604 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 08:52:39,614 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-01-09 08:52:39,804 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-01-09 08:52:39,805 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 08:52:39,806 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 08:52:39,806 INFO L85 PathProgramCache]: Analyzing trace with hash -807074248, now seen corresponding path program 1 times [2025-01-09 08:52:39,806 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 08:52:39,806 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1070714640] [2025-01-09 08:52:39,806 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:52:39,806 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 08:52:39,822 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-01-09 08:52:39,843 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-01-09 08:52:39,843 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:39,843 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 08:52:40,048 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 612 trivial. 0 not checked. [2025-01-09 08:52:40,049 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 08:52:40,049 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1070714640] [2025-01-09 08:52:40,049 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1070714640] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 08:52:40,049 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 08:52:40,049 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-01-09 08:52:40,049 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [341027498] [2025-01-09 08:52:40,049 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 08:52:40,050 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-01-09 08:52:40,051 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 08:52:40,052 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-01-09 08:52:40,052 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=26, Unknown=0, NotChecked=0, Total=42 [2025-01-09 08:52:40,052 INFO L87 Difference]: Start difference. First operand 113 states and 161 transitions. Second operand has 7 states, 7 states have (on average 5.285714285714286) internal successors, (37), 7 states have internal predecessors, (37), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-01-09 08:52:40,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 08:52:40,189 INFO L93 Difference]: Finished difference Result 252 states and 360 transitions. [2025-01-09 08:52:40,193 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-01-09 08:52:40,193 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.285714285714286) internal successors, (37), 7 states have internal predecessors, (37), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) Word has length 124 [2025-01-09 08:52:40,193 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 08:52:40,195 INFO L225 Difference]: With dead ends: 252 [2025-01-09 08:52:40,195 INFO L226 Difference]: Without dead ends: 142 [2025-01-09 08:52:40,196 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2025-01-09 08:52:40,196 INFO L435 NwaCegarLoop]: 115 mSDtfsCounter, 76 mSDsluCounter, 399 mSDsCounter, 0 mSdLazyCounter, 162 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 514 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 162 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2025-01-09 08:52:40,196 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 514 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 162 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2025-01-09 08:52:40,197 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2025-01-09 08:52:40,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 124. [2025-01-09 08:52:40,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 97 states have (on average 1.3917525773195876) internal successors, (135), 98 states have internal predecessors, (135), 22 states have call successors, (22), 4 states have call predecessors, (22), 4 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2025-01-09 08:52:40,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 179 transitions. [2025-01-09 08:52:40,225 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 179 transitions. Word has length 124 [2025-01-09 08:52:40,225 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 08:52:40,226 INFO L471 AbstractCegarLoop]: Abstraction has 124 states and 179 transitions. [2025-01-09 08:52:40,226 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 5.285714285714286) internal successors, (37), 7 states have internal predecessors, (37), 1 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 1 states have call predecessors, (18), 1 states have call successors, (18) [2025-01-09 08:52:40,226 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 179 transitions. [2025-01-09 08:52:40,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2025-01-09 08:52:40,232 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 08:52:40,232 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 08:52:40,232 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 08:52:40,232 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 08:52:40,232 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 08:52:40,232 INFO L85 PathProgramCache]: Analyzing trace with hash 1899545146, now seen corresponding path program 1 times [2025-01-09 08:52:40,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 08:52:40,233 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [120108746] [2025-01-09 08:52:40,233 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:52:40,233 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 08:52:40,246 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-01-09 08:52:40,277 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-01-09 08:52:40,277 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:40,277 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 08:52:40,278 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 08:52:40,282 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 124 statements into 1 equivalence classes. [2025-01-09 08:52:40,300 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 124 of 124 statements. [2025-01-09 08:52:40,301 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:40,301 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 08:52:40,328 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 08:52:40,329 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 08:52:40,329 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 08:52:40,331 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 08:52:40,333 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-01-09 08:52:40,385 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 08:52:40,391 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 08:52:40 BoogieIcfgContainer [2025-01-09 08:52:40,391 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 08:52:40,391 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 08:52:40,391 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 08:52:40,392 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 08:52:40,392 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 08:52:37" (3/4) ... [2025-01-09 08:52:40,397 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 08:52:40,398 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 08:52:40,399 INFO L158 Benchmark]: Toolchain (without parser) took 3322.55ms. Allocated memory is still 167.8MB. Free memory was 124.1MB in the beginning and 63.8MB in the end (delta: 60.3MB). Peak memory consumption was 61.2MB. Max. memory is 16.1GB. [2025-01-09 08:52:40,399 INFO L158 Benchmark]: CDTParser took 0.27ms. Allocated memory is still 201.3MB. Free memory is still 115.9MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 08:52:40,399 INFO L158 Benchmark]: CACSL2BoogieTranslator took 236.45ms. Allocated memory is still 167.8MB. Free memory was 124.1MB in the beginning and 111.0MB in the end (delta: 13.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 08:52:40,399 INFO L158 Benchmark]: Boogie Procedure Inliner took 26.65ms. Allocated memory is still 167.8MB. Free memory was 111.0MB in the beginning and 109.0MB in the end (delta: 2.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 08:52:40,400 INFO L158 Benchmark]: Boogie Preprocessor took 41.19ms. Allocated memory is still 167.8MB. Free memory was 109.0MB in the beginning and 106.4MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 08:52:40,400 INFO L158 Benchmark]: RCFGBuilder took 334.47ms. Allocated memory is still 167.8MB. Free memory was 106.4MB in the beginning and 88.4MB in the end (delta: 18.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 08:52:40,401 INFO L158 Benchmark]: TraceAbstraction took 2672.67ms. Allocated memory is still 167.8MB. Free memory was 87.7MB in the beginning and 63.8MB in the end (delta: 23.9MB). Peak memory consumption was 27.6MB. Max. memory is 16.1GB. [2025-01-09 08:52:40,401 INFO L158 Benchmark]: Witness Printer took 6.60ms. Allocated memory is still 167.8MB. Free memory was 63.8MB in the beginning and 63.8MB in the end (delta: 33.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 08:52:40,402 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.27ms. Allocated memory is still 201.3MB. Free memory is still 115.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 236.45ms. Allocated memory is still 167.8MB. Free memory was 124.1MB in the beginning and 111.0MB in the end (delta: 13.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 26.65ms. Allocated memory is still 167.8MB. Free memory was 111.0MB in the beginning and 109.0MB in the end (delta: 2.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 41.19ms. Allocated memory is still 167.8MB. Free memory was 109.0MB in the beginning and 106.4MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 334.47ms. Allocated memory is still 167.8MB. Free memory was 106.4MB in the beginning and 88.4MB in the end (delta: 18.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 2672.67ms. Allocated memory is still 167.8MB. Free memory was 87.7MB in the beginning and 63.8MB in the end (delta: 23.9MB). Peak memory consumption was 27.6MB. Max. memory is 16.1GB. * Witness Printer took 6.60ms. Allocated memory is still 167.8MB. Free memory was 63.8MB in the beginning and 63.8MB in the end (delta: 33.1kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryArithmeticDOUBLEoperation at line 90, overapproximation of someBinaryDOUBLEComparisonOperation at line 125, overapproximation of someBinaryDOUBLEComparisonOperation at line 130, overapproximation of someBinaryDOUBLEComparisonOperation at line 89, overapproximation of someBinaryDOUBLEComparisonOperation at line 130, overapproximation of someBinaryDOUBLEComparisonOperation at line 123, overapproximation of someBinaryDOUBLEComparisonOperation at line 111, overapproximation of someBinaryDOUBLEComparisonOperation at line 59, overapproximation of someBinaryDOUBLEComparisonOperation at line 109, overapproximation of someBinaryDOUBLEComparisonOperation at line 70, overapproximation of someBinaryDOUBLEComparisonOperation at line 113, overapproximation of someBinaryDOUBLEComparisonOperation at line 115, overapproximation of someBinaryDOUBLEComparisonOperation at line 58. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 1; [L23] signed short int var_1_2 = -256; [L24] signed long int var_1_3 = 256; [L25] unsigned char var_1_4 = 0; [L26] double var_1_5 = 127.5; [L27] unsigned char var_1_6 = 0; [L28] double var_1_7 = 10000000000000.125; [L29] double var_1_8 = 1.25; [L30] double var_1_9 = 4.125; [L31] double var_1_10 = 25.7; [L32] signed long int var_1_11 = -2; [L33] double var_1_12 = 49.75; [L34] signed long int var_1_13 = 5; [L35] signed long int var_1_14 = 128; [L36] signed long int var_1_15 = 1000; [L37] double var_1_16 = 0.2; [L38] double var_1_17 = 0.25; [L39] double var_1_18 = 99999999999999.5; VAL [isInitial=0, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=-256, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L134] isInitial = 1 [L135] FCALL initially() [L137] FCALL updateLastVariables() [L138] CALL updateVariables() [L96] var_1_2 = __VERIFIER_nondet_short() [L97] CALL assume_abort_if_not(var_1_2 >= -32768) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L97] RET assume_abort_if_not(var_1_2 >= -32768) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L98] CALL assume_abort_if_not(var_1_2 <= 32767) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L98] RET assume_abort_if_not(var_1_2 <= 32767) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=256, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L99] var_1_3 = __VERIFIER_nondet_long() [L100] CALL assume_abort_if_not(var_1_3 >= -2147483648) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L100] RET assume_abort_if_not(var_1_3 >= -2147483648) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L101] CALL assume_abort_if_not(var_1_3 <= 2147483647) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L101] RET assume_abort_if_not(var_1_3 <= 2147483647) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=0, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L102] var_1_4 = __VERIFIER_nondet_uchar() [L103] CALL assume_abort_if_not(var_1_4 >= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L103] RET assume_abort_if_not(var_1_4 >= 1) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L104] CALL assume_abort_if_not(var_1_4 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L104] RET assume_abort_if_not(var_1_4 <= 1) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L105] var_1_6 = __VERIFIER_nondet_uchar() [L106] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L106] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L107] CALL assume_abort_if_not(var_1_6 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L107] RET assume_abort_if_not(var_1_6 <= 1) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_7=80000000000001/8, var_1_8=5/4, var_1_9=33/8] [L108] var_1_7 = __VERIFIER_nondet_double() [L109] CALL assume_abort_if_not((var_1_7 >= -922337.2036854765600e+13F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854765600e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4, var_1_9=33/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4, var_1_9=33/8] [L109] RET assume_abort_if_not((var_1_7 >= -922337.2036854765600e+13F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854765600e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4, var_1_9=33/8] [L110] var_1_9 = __VERIFIER_nondet_double() [L111] CALL assume_abort_if_not((var_1_9 >= -922337.2036854776000e+13F && var_1_9 <= -1.0e-20F) || (var_1_9 <= 9223372.036854776000e+12F && var_1_9 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L111] RET assume_abort_if_not((var_1_9 >= -922337.2036854776000e+13F && var_1_9 <= -1.0e-20F) || (var_1_9 <= 9223372.036854776000e+12F && var_1_9 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=257/10, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L112] var_1_10 = __VERIFIER_nondet_double() [L113] CALL assume_abort_if_not((var_1_10 >= -922337.2036854765600e+13F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 9223372.036854765600e+12F && var_1_10 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L113] RET assume_abort_if_not((var_1_10 >= -922337.2036854765600e+13F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 9223372.036854765600e+12F && var_1_10 >= 1.0e-20F )) VAL [isInitial=1, var_1_11=-2, var_1_12=199/4, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L114] var_1_12 = __VERIFIER_nondet_double() [L115] CALL assume_abort_if_not((var_1_12 >= -922337.2036854776000e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854776000e+12F && var_1_12 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L115] RET assume_abort_if_not((var_1_12 >= -922337.2036854776000e+13F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854776000e+12F && var_1_12 >= 1.0e-20F )) VAL [isInitial=1, var_1_11=-2, var_1_13=5, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L116] var_1_13 = __VERIFIER_nondet_long() [L117] CALL assume_abort_if_not(var_1_13 >= -1) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L117] RET assume_abort_if_not(var_1_13 >= -1) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L118] CALL assume_abort_if_not(var_1_13 <= 2147483646) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L118] RET assume_abort_if_not(var_1_13 <= 2147483646) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=128, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L119] var_1_14 = __VERIFIER_nondet_long() [L120] CALL assume_abort_if_not(var_1_14 >= -2147483647) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L120] RET assume_abort_if_not(var_1_14 >= -2147483647) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L121] CALL assume_abort_if_not(var_1_14 <= 2147483646) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L121] RET assume_abort_if_not(var_1_14 <= 2147483646) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_17=1/4, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L122] var_1_17 = __VERIFIER_nondet_double() [L123] CALL assume_abort_if_not((var_1_17 >= -461168.6018427382800e+13F && var_1_17 <= -1.0e-20F) || (var_1_17 <= 4611686.018427382800e+12F && var_1_17 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L123] RET assume_abort_if_not((var_1_17 >= -461168.6018427382800e+13F && var_1_17 <= -1.0e-20F) || (var_1_17 <= 4611686.018427382800e+12F && var_1_17 >= 1.0e-20F )) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_18=199999999999999/2, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L124] var_1_18 = __VERIFIER_nondet_double() [L125] CALL assume_abort_if_not((var_1_18 >= -230584.3009213691390e+13F && var_1_18 <= -1.0e-20F) || (var_1_18 <= 2305843.009213691390e+12F && var_1_18 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L125] RET assume_abort_if_not((var_1_18 >= -230584.3009213691390e+13F && var_1_18 <= -1.0e-20F) || (var_1_18 <= 2305843.009213691390e+12F && var_1_18 >= 1.0e-20F )) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L138] RET updateVariables() [L139] CALL step() [L43] signed long int stepLocal_0 = var_1_2 / ((((-16) < 0 ) ? -(-16) : (-16))); VAL [isInitial=1, stepLocal_0=4, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L44] COND FALSE !(stepLocal_0 >= var_1_3) VAL [isInitial=1, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L47] signed long int stepLocal_2 = var_1_3; [L48] unsigned char stepLocal_1 = var_1_6; VAL [isInitial=1, stepLocal_1=0, stepLocal_2=69, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L49] COND TRUE \read(var_1_1) VAL [isInitial=1, stepLocal_1=0, stepLocal_2=69, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=255/2, var_1_6=0, var_1_8=5/4] [L50] COND FALSE !(var_1_2 >= stepLocal_2) [L55] var_1_5 = var_1_7 VAL [isInitial=1, stepLocal_1=0, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=5/4] [L58] COND TRUE 10.55f < var_1_5 VAL [isInitial=1, stepLocal_1=0, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=5/4] [L59] COND TRUE var_1_5 > (var_1_7 * var_1_9) [L60] var_1_8 = ((((var_1_7) > (var_1_10)) ? (var_1_7) : (var_1_10))) VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L69] COND TRUE \read(var_1_1) VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-2, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L70] COND TRUE ((((var_1_9) > (49.75)) ? (var_1_9) : (49.75))) > var_1_12 [L71] var_1_11 = ((((var_1_2) < ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14))))) ? (var_1_2) : ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14)))))) VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L76] EXPR var_1_3 & var_1_13 VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=1000, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L76] COND FALSE !((- var_1_2) > (var_1_3 & var_1_13)) [L87] var_1_15 = var_1_13 VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=0, var_1_16=1/5, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L89] COND TRUE ((((var_1_12) < (var_1_5)) ? (var_1_12) : (var_1_5))) >= var_1_7 [L90] var_1_16 = (var_1_17 + (var_1_18 + 16.75)) VAL [isInitial=1, stepLocal_1=0, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=0, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L139] RET step() [L140] CALL, EXPR property() [L130] EXPR ((((((var_1_2 / ((((-16) < 0 ) ? -(-16) : (-16)))) >= var_1_3) ? (var_1_1 == ((unsigned char) var_1_4)) : 1) && (var_1_1 ? ((var_1_2 >= var_1_3) ? ((var_1_6 || (var_1_2 < var_1_3)) ? (var_1_5 == ((double) var_1_7)) : 1) : (var_1_5 == ((double) var_1_7))) : 1)) && ((10.55f < var_1_5) ? ((var_1_5 > (var_1_7 * var_1_9)) ? (var_1_8 == ((double) ((((var_1_7) > (var_1_10)) ? (var_1_7) : (var_1_10))))) : 1) : ((var_1_5 > var_1_7) ? (var_1_8 == ((double) var_1_10)) : (var_1_8 == ((double) var_1_7))))) && (var_1_1 ? ((((((var_1_9) > (49.75)) ? (var_1_9) : (49.75))) > var_1_12) ? (var_1_11 == ((signed long int) ((((var_1_2) < ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14))))) ? (var_1_2) : ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14)))))))) : 1) : (var_1_11 == ((signed long int) var_1_2)))) && (((- var_1_2) > (var_1_3 & var_1_13)) ? ((var_1_2 <= 128) ? (var_1_1 ? (var_1_15 == ((signed long int) var_1_14)) : (var_1_15 == ((signed long int) var_1_14))) : (var_1_15 == ((signed long int) var_1_14))) : (var_1_15 == ((signed long int) var_1_13))) VAL [isInitial=1, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=0, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L130-L131] return (((((((var_1_2 / ((((-16) < 0 ) ? -(-16) : (-16)))) >= var_1_3) ? (var_1_1 == ((unsigned char) var_1_4)) : 1) && (var_1_1 ? ((var_1_2 >= var_1_3) ? ((var_1_6 || (var_1_2 < var_1_3)) ? (var_1_5 == ((double) var_1_7)) : 1) : (var_1_5 == ((double) var_1_7))) : 1)) && ((10.55f < var_1_5) ? ((var_1_5 > (var_1_7 * var_1_9)) ? (var_1_8 == ((double) ((((var_1_7) > (var_1_10)) ? (var_1_7) : (var_1_10))))) : 1) : ((var_1_5 > var_1_7) ? (var_1_8 == ((double) var_1_10)) : (var_1_8 == ((double) var_1_7))))) && (var_1_1 ? ((((((var_1_9) > (49.75)) ? (var_1_9) : (49.75))) > var_1_12) ? (var_1_11 == ((signed long int) ((((var_1_2) < ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14))))) ? (var_1_2) : ((((((var_1_13 - 5)) > (var_1_14)) ? ((var_1_13 - 5)) : (var_1_14)))))))) : 1) : (var_1_11 == ((signed long int) var_1_2)))) && (((- var_1_2) > (var_1_3 & var_1_13)) ? ((var_1_2 <= 128) ? (var_1_1 ? (var_1_15 == ((signed long int) var_1_14)) : (var_1_15 == ((signed long int) var_1_14))) : (var_1_15 == ((signed long int) var_1_14))) : (var_1_15 == ((signed long int) var_1_13)))) && ((((((var_1_12) < (var_1_5)) ? (var_1_12) : (var_1_5))) >= var_1_7) ? (var_1_16 == ((double) (var_1_17 + (var_1_18 + 16.75)))) : (var_1_16 == ((double) var_1_17))) ; [L140] RET, EXPR property() [L140] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=0, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] [L19] reach_error() VAL [isInitial=1, var_1_10=100000000000004, var_1_11=-5, var_1_13=0, var_1_14=-2147483647, var_1_15=0, var_1_1=1, var_1_2=68, var_1_3=69, var_1_4=1, var_1_5=100000000000004, var_1_6=0, var_1_7=100000000000004, var_1_8=100000000000004] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 71 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 2.6s, OverallIterations: 3, TraceHistogramMax: 18, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 439 SdHoareTripleChecker+Valid, 0.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 438 mSDsluCounter, 810 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 606 mSDsCounter, 121 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 399 IncrementalHoareTripleChecker+Invalid, 520 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 121 mSolverCounterUnsat, 204 mSDtfsCounter, 399 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 275 GetRequests, 241 SyntacticMatches, 2 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 128 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=124occurred in iteration=2, InterpolantAutomatonStates: 25, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 2 MinimizatonAttempts, 35 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 1.2s InterpolantComputationTime, 492 NumberOfCodeBlocks, 492 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 486 ConstructedInterpolants, 0 QuantifiedInterpolants, 1174 SizeOfPredicates, 1 NumberOfNonLiveVariables, 282 ConjunctsInSsa, 13 ConjunctsInUnsatCore, 4 InterpolantComputations, 1 PerfectInterpolantSequences, 2298/2448 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-01-09 08:52:40,418 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.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 d10cd0607171a465ff2ca1ce03aa847fdf912d87f8dfda1b118440a87d224724 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 08:52:42,495 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 08:52:42,618 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-01-09 08:52:42,626 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 08:52:42,626 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 08:52:42,640 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 08:52:42,640 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 08:52:42,640 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 08:52:42,640 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 08:52:42,641 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 08:52:42,641 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 08:52:42,641 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 08:52:42,641 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 08:52:42,641 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 08:52:42,641 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 08:52:42,641 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 08:52:42,641 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 08:52:42,642 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 08:52:42,643 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:42,643 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 08:52:42,643 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:42,643 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 08:52:42,644 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 08:52:42,644 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 -> d10cd0607171a465ff2ca1ce03aa847fdf912d87f8dfda1b118440a87d224724 [2025-01-09 08:52:42,912 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 08:52:42,921 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 08:52:42,923 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 08:52:42,924 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 08:52:42,924 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 08:52:42,925 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:44,163 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4a1a4450a/598abe80701b419bb41f587be6c623ed/FLAGc4a600e4a [2025-01-09 08:52:44,369 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 08:52:44,371 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:44,378 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4a1a4450a/598abe80701b419bb41f587be6c623ed/FLAGc4a600e4a [2025-01-09 08:52:44,393 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4a1a4450a/598abe80701b419bb41f587be6c623ed [2025-01-09 08:52:44,395 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 08:52:44,397 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 08:52:44,398 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 08:52:44,398 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 08:52:44,401 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 08:52:44,401 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,402 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@799fe5e8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44, skipping insertion in model container [2025-01-09 08:52:44,402 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,419 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 08:52:44,523 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_steplocals_file-30.i[917,930] [2025-01-09 08:52:44,569 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 08:52:44,580 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 08:52:44,589 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_steplocals_file-30.i[917,930] [2025-01-09 08:52:44,619 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 08:52:44,635 INFO L204 MainTranslator]: Completed translation [2025-01-09 08:52:44,636 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44 WrapperNode [2025-01-09 08:52:44,637 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 08:52:44,637 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 08:52:44,638 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 08:52:44,638 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 08:52:44,643 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,655 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,672 INFO L138 Inliner]: procedures = 27, calls = 31, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 133 [2025-01-09 08:52:44,676 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 08:52:44,677 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 08:52:44,677 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 08:52:44,677 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 08:52:44,686 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,686 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,690 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,703 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-01-09 08:52:44,704 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,705 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,717 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,717 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,719 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,720 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,724 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,726 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 08:52:44,726 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 08:52:44,726 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 08:52:44,728 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 08:52:44,729 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (1/1) ... [2025-01-09 08:52:44,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 08:52:44,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 08:52:44,751 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-01-09 08:52:44,754 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-01-09 08:52:44,773 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 08:52:44,773 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 08:52:44,773 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 08:52:44,773 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 08:52:44,774 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 08:52:44,774 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 08:52:44,839 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 08:52:44,840 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 08:52:51,647 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-01-09 08:52:51,647 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 08:52:51,654 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 08:52:51,654 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 08:52:51,654 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 08:52:51 BoogieIcfgContainer [2025-01-09 08:52:51,654 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 08:52:51,656 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 08:52:51,656 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 08:52:51,664 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 08:52:51,667 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 08:52:44" (1/3) ... [2025-01-09 08:52:51,668 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@493da4a5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 08:52:51, skipping insertion in model container [2025-01-09 08:52:51,668 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 08:52:44" (2/3) ... [2025-01-09 08:52:51,668 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@493da4a5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 08:52:51, skipping insertion in model container [2025-01-09 08:52:51,668 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 08:52:51" (3/3) ... [2025-01-09 08:52:51,669 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_steplocals_file-30.i [2025-01-09 08:52:51,680 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 08:52:51,684 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_steplocals_file-30.i that has 2 procedures, 62 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 08:52:51,723 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 08:52:51,733 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;@2b9fa9b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 08:52:51,733 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 08:52:51,737 INFO L276 IsEmpty]: Start isEmpty. Operand has 62 states, 41 states have (on average 1.4146341463414633) internal successors, (58), 42 states have internal predecessors, (58), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2025-01-09 08:52:51,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2025-01-09 08:52:51,746 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 08:52:51,746 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 08:52:51,747 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 08:52:51,752 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 08:52:51,752 INFO L85 PathProgramCache]: Analyzing trace with hash 2122199413, now seen corresponding path program 1 times [2025-01-09 08:52:51,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 08:52:51,761 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1638302168] [2025-01-09 08:52:51,763 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:52:51,764 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-01-09 08:52:51,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 08:52:51,766 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-01-09 08:52:51,769 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-01-09 08:52:51,849 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 119 statements into 1 equivalence classes. [2025-01-09 08:52:52,184 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 119 of 119 statements. [2025-01-09 08:52:52,185 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:52:52,185 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 08:52:52,198 INFO L256 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-09 08:52:52,208 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 08:52:53,987 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 248 proven. 72 refuted. 0 times theorem prover too weak. 292 trivial. 0 not checked. [2025-01-09 08:52:53,987 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 08:52:54,768 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 12 proven. 39 refuted. 0 times theorem prover too weak. 561 trivial. 0 not checked. [2025-01-09 08:52:54,769 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 08:52:54,770 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1638302168] [2025-01-09 08:52:54,770 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1638302168] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 08:52:54,770 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-01-09 08:52:54,770 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 12 [2025-01-09 08:52:54,771 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1396408200] [2025-01-09 08:52:54,772 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-01-09 08:52:54,774 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2025-01-09 08:52:54,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 08:52:54,785 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-01-09 08:52:54,785 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2025-01-09 08:52:54,787 INFO L87 Difference]: Start difference. First operand has 62 states, 41 states have (on average 1.4146341463414633) internal successors, (58), 42 states have internal predecessors, (58), 18 states have call successors, (18), 1 states have call predecessors, (18), 1 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 12 states have internal predecessors, (60), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) [2025-01-09 08:53:00,055 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.93s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 08:53:00,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 08:53:00,342 INFO L93 Difference]: Finished difference Result 138 states and 232 transitions. [2025-01-09 08:53:00,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2025-01-09 08:53:00,344 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 12 states have internal predecessors, (60), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) Word has length 119 [2025-01-09 08:53:00,345 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 08:53:00,351 INFO L225 Difference]: With dead ends: 138 [2025-01-09 08:53:00,352 INFO L226 Difference]: Without dead ends: 79 [2025-01-09 08:53:00,354 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 248 GetRequests, 227 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=149, Invalid=313, Unknown=0, NotChecked=0, Total=462 [2025-01-09 08:53:00,355 INFO L435 NwaCegarLoop]: 72 mSDtfsCounter, 134 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 88 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 139 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 235 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 88 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.0s IncrementalHoareTripleChecker+Time [2025-01-09 08:53:00,359 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [139 Valid, 181 Invalid, 235 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [88 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 5.0s Time] [2025-01-09 08:53:00,370 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2025-01-09 08:53:00,385 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 74. [2025-01-09 08:53:00,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 49 states have internal predecessors, (59), 22 states have call successors, (22), 3 states have call predecessors, (22), 3 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2025-01-09 08:53:00,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 103 transitions. [2025-01-09 08:53:00,392 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 103 transitions. Word has length 119 [2025-01-09 08:53:00,393 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 08:53:00,394 INFO L471 AbstractCegarLoop]: Abstraction has 74 states and 103 transitions. [2025-01-09 08:53:00,394 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 12 states have internal predecessors, (60), 3 states have call successors, (31), 3 states have call predecessors, (31), 5 states have return successors, (32), 3 states have call predecessors, (32), 3 states have call successors, (32) [2025-01-09 08:53:00,395 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 103 transitions. [2025-01-09 08:53:00,396 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2025-01-09 08:53:00,397 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 08:53:00,397 INFO L218 NwaCegarLoop]: trace histogram [18, 18, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-01-09 08:53:00,411 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-01-09 08:53:00,602 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-01-09 08:53:00,602 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 08:53:00,603 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 08:53:00,604 INFO L85 PathProgramCache]: Analyzing trace with hash -1881312564, now seen corresponding path program 1 times [2025-01-09 08:53:00,604 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 08:53:00,604 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [618687806] [2025-01-09 08:53:00,605 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 08:53:00,605 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-01-09 08:53:00,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 08:53:00,607 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-01-09 08:53:00,608 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-01-09 08:53:00,643 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 121 statements into 1 equivalence classes. [2025-01-09 08:53:01,077 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 121 of 121 statements. [2025-01-09 08:53:01,077 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 08:53:01,077 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 08:53:01,094 INFO L256 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 33 conjuncts are in the unsatisfiable core [2025-01-09 08:53:01,099 INFO L279 TraceCheckSpWp]: Computing forward predicates...