./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8fc3dc66 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash cbb57c0f29593d448f6879a3daeafb96125f4bb18be9c5e7e39686d9980eafd0 --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-16 23:17:50,094 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-16 23:17:50,147 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-16 23:17:50,153 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-16 23:17:50,153 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-16 23:17:50,172 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-16 23:17:50,173 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-16 23:17:50,173 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-16 23:17:50,173 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-16 23:17:50,173 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-16 23:17:50,173 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-16 23:17:50,173 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-16 23:17:50,173 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-16 23:17:50,173 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Use SBE=true [2025-03-16 23:17:50,174 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-16 23:17:50,174 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-16 23:17:50,174 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-16 23:17:50,175 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-16 23:17:50,175 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> cbb57c0f29593d448f6879a3daeafb96125f4bb18be9c5e7e39686d9980eafd0 [2025-03-16 23:17:50,394 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-16 23:17:50,399 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-16 23:17:50,402 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-16 23:17:50,403 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-16 23:17:50,404 INFO L274 PluginConnector]: CDTParser initialized [2025-03-16 23:17:50,405 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:51,570 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14060008d/4ac421dd5c3349c8a548f2e1aea6bb43/FLAGb1a1596f7 [2025-03-16 23:17:51,819 INFO L384 CDTParser]: Found 1 translation units. [2025-03-16 23:17:51,821 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:51,831 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14060008d/4ac421dd5c3349c8a548f2e1aea6bb43/FLAGb1a1596f7 [2025-03-16 23:17:51,846 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14060008d/4ac421dd5c3349c8a548f2e1aea6bb43 [2025-03-16 23:17:51,848 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-16 23:17:51,849 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-16 23:17:51,850 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-16 23:17:51,850 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-16 23:17:51,855 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-16 23:17:51,855 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.03 11:17:51" (1/1) ... [2025-03-16 23:17:51,857 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7601b6d6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:51, skipping insertion in model container [2025-03-16 23:17:51,857 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.03 11:17:51" (1/1) ... [2025-03-16 23:17:51,874 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-16 23:17:51,970 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i[917,930] [2025-03-16 23:17:52,025 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-16 23:17:52,033 INFO L200 MainTranslator]: Completed pre-run [2025-03-16 23:17:52,044 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i[917,930] [2025-03-16 23:17:52,078 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-16 23:17:52,094 INFO L204 MainTranslator]: Completed translation [2025-03-16 23:17:52,094 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52 WrapperNode [2025-03-16 23:17:52,094 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-16 23:17:52,095 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-16 23:17:52,096 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-16 23:17:52,096 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-16 23:17:52,100 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,107 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,124 INFO L138 Inliner]: procedures = 26, calls = 36, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 154 [2025-03-16 23:17:52,124 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-16 23:17:52,125 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-16 23:17:52,125 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-16 23:17:52,125 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-16 23:17:52,131 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,131 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,133 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,147 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-16 23:17:52,148 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,148 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,153 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,153 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,154 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,155 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,157 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-16 23:17:52,157 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-16 23:17:52,157 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-16 23:17:52,158 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-16 23:17:52,158 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (1/1) ... [2025-03-16 23:17:52,162 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-16 23:17:52,174 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-16 23:17:52,188 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-16 23:17:52,193 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-16 23:17:52,209 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-16 23:17:52,210 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-16 23:17:52,210 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-16 23:17:52,210 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-16 23:17:52,210 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-16 23:17:52,210 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-16 23:17:52,275 INFO L256 CfgBuilder]: Building ICFG [2025-03-16 23:17:52,277 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-16 23:17:52,532 INFO L? ?]: Removed 18 outVars from TransFormulas that were not future-live. [2025-03-16 23:17:52,532 INFO L307 CfgBuilder]: Performing block encoding [2025-03-16 23:17:52,541 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-16 23:17:52,541 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-16 23:17:52,541 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 16.03 11:17:52 BoogieIcfgContainer [2025-03-16 23:17:52,541 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-16 23:17:52,543 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-16 23:17:52,543 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-16 23:17:52,546 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-16 23:17:52,546 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 16.03 11:17:51" (1/3) ... [2025-03-16 23:17:52,547 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ca33d64 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 16.03 11:17:52, skipping insertion in model container [2025-03-16 23:17:52,547 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:52" (2/3) ... [2025-03-16 23:17:52,548 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ca33d64 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 16.03 11:17:52, skipping insertion in model container [2025-03-16 23:17:52,548 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 16.03 11:17:52" (3/3) ... [2025-03-16 23:17:52,549 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:52,559 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-16 23:17:52,560 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_steplocals_file-25.i that has 2 procedures, 64 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-16 23:17:52,600 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-16 23:17:52,608 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;@4843cfe8, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-16 23:17:52,609 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-16 23:17:52,612 INFO L276 IsEmpty]: Start isEmpty. Operand has 64 states, 38 states have (on average 1.394736842105263) internal successors, (53), 39 states have internal predecessors, (53), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2025-03-16 23:17:52,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2025-03-16 23:17:52,624 INFO L210 NwaCegarLoop]: Found error trace [2025-03-16 23:17:52,625 INFO L218 NwaCegarLoop]: trace histogram [23, 23, 23, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-16 23:17:52,625 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-16 23:17:52,629 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-16 23:17:52,629 INFO L85 PathProgramCache]: Analyzing trace with hash -550656750, now seen corresponding path program 1 times [2025-03-16 23:17:52,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-16 23:17:52,634 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287701005] [2025-03-16 23:17:52,635 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:17:52,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-16 23:17:52,696 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:52,712 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:52,713 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:52,713 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-16 23:17:52,855 INFO L134 CoverageAnalysis]: Checked inductivity of 1012 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 968 trivial. 0 not checked. [2025-03-16 23:17:52,857 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-16 23:17:52,857 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1287701005] [2025-03-16 23:17:52,858 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1287701005] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-16 23:17:52,858 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1855555233] [2025-03-16 23:17:52,859 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:17:52,859 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-16 23:17:52,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-16 23:17:52,861 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-16 23:17:52,863 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-16 23:17:52,951 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:53,010 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:53,011 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:53,011 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-16 23:17:53,013 INFO L256 TraceCheckSpWp]: Trace formula consists of 340 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-16 23:17:53,022 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-16 23:17:53,047 INFO L134 CoverageAnalysis]: Checked inductivity of 1012 backedges. 44 proven. 0 refuted. 0 times theorem prover too weak. 968 trivial. 0 not checked. [2025-03-16 23:17:53,047 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-16 23:17:53,047 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1855555233] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-16 23:17:53,047 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-16 23:17:53,049 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-16 23:17:53,050 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146971859] [2025-03-16 23:17:53,050 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-16 23:17:53,054 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-16 23:17:53,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-16 23:17:53,068 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-16 23:17:53,069 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-16 23:17:53,071 INFO L87 Difference]: Start difference. First operand has 64 states, 38 states have (on average 1.394736842105263) internal successors, (53), 39 states have internal predecessors, (53), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (23), 1 states have call predecessors, (23), 2 states have call successors, (23) [2025-03-16 23:17:53,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-16 23:17:53,093 INFO L93 Difference]: Finished difference Result 125 states and 219 transitions. [2025-03-16 23:17:53,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-16 23:17:53,095 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (23), 1 states have call predecessors, (23), 2 states have call successors, (23) Word has length 143 [2025-03-16 23:17:53,096 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-16 23:17:53,102 INFO L225 Difference]: With dead ends: 125 [2025-03-16 23:17:53,102 INFO L226 Difference]: Without dead ends: 62 [2025-03-16 23:17:53,105 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 144 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-16 23:17:53,109 INFO L435 NwaCegarLoop]: 95 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 95 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-16 23:17:53,110 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 95 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-16 23:17:53,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2025-03-16 23:17:53,140 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 62. [2025-03-16 23:17:53,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 37 states have (on average 1.3243243243243243) internal successors, (49), 37 states have internal predecessors, (49), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2025-03-16 23:17:53,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 95 transitions. [2025-03-16 23:17:53,148 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 95 transitions. Word has length 143 [2025-03-16 23:17:53,148 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-16 23:17:53,148 INFO L471 AbstractCegarLoop]: Abstraction has 62 states and 95 transitions. [2025-03-16 23:17:53,149 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (23), 1 states have call predecessors, (23), 2 states have call successors, (23) [2025-03-16 23:17:53,149 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 95 transitions. [2025-03-16 23:17:53,151 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2025-03-16 23:17:53,152 INFO L210 NwaCegarLoop]: Found error trace [2025-03-16 23:17:53,152 INFO L218 NwaCegarLoop]: trace histogram [23, 23, 23, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-16 23:17:53,160 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-03-16 23:17:53,357 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-16 23:17:53,357 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-16 23:17:53,358 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-16 23:17:53,358 INFO L85 PathProgramCache]: Analyzing trace with hash -1127479919, now seen corresponding path program 1 times [2025-03-16 23:17:53,358 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-16 23:17:53,358 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1798607904] [2025-03-16 23:17:53,358 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:17:53,358 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-16 23:17:53,372 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:53,535 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:53,535 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:53,536 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-03-16 23:17:53,542 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2093326133] [2025-03-16 23:17:53,543 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:17:53,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-16 23:17:53,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-16 23:17:53,545 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-16 23:17:53,547 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-03-16 23:17:53,614 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:53,671 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:53,671 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:53,672 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-16 23:17:53,672 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-16 23:17:53,694 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:53,724 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:53,724 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:53,724 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-16 23:17:53,783 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-16 23:17:53,784 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-16 23:17:53,784 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-16 23:17:53,794 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2025-03-16 23:17:53,986 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2025-03-16 23:17:53,988 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-16 23:17:54,060 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-16 23:17:54,066 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 16.03 11:17:54 BoogieIcfgContainer [2025-03-16 23:17:54,066 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-16 23:17:54,067 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-16 23:17:54,067 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-16 23:17:54,067 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-16 23:17:54,067 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 16.03 11:17:52" (3/4) ... [2025-03-16 23:17:54,069 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-16 23:17:54,069 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-16 23:17:54,070 INFO L158 Benchmark]: Toolchain (without parser) took 2220.34ms. Allocated memory is still 142.6MB. Free memory was 104.3MB in the beginning and 37.1MB in the end (delta: 67.2MB). Peak memory consumption was 65.1MB. Max. memory is 16.1GB. [2025-03-16 23:17:54,070 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 201.3MB. Free memory is still 125.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-16 23:17:54,070 INFO L158 Benchmark]: CACSL2BoogieTranslator took 244.52ms. Allocated memory is still 142.6MB. Free memory was 104.3MB in the beginning and 90.5MB in the end (delta: 13.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-16 23:17:54,070 INFO L158 Benchmark]: Boogie Procedure Inliner took 28.86ms. Allocated memory is still 142.6MB. Free memory was 90.5MB in the beginning and 87.3MB in the end (delta: 3.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-16 23:17:54,070 INFO L158 Benchmark]: Boogie Preprocessor took 32.13ms. Allocated memory is still 142.6MB. Free memory was 87.3MB in the beginning and 83.2MB in the end (delta: 4.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-16 23:17:54,071 INFO L158 Benchmark]: IcfgBuilder took 384.00ms. Allocated memory is still 142.6MB. Free memory was 83.2MB in the beginning and 62.2MB in the end (delta: 21.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-16 23:17:54,071 INFO L158 Benchmark]: TraceAbstraction took 1522.87ms. Allocated memory is still 142.6MB. Free memory was 62.2MB in the beginning and 37.8MB in the end (delta: 24.4MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2025-03-16 23:17:54,071 INFO L158 Benchmark]: Witness Printer took 2.68ms. Allocated memory is still 142.6MB. Free memory is still 37.1MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-16 23:17:54,072 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.20ms. Allocated memory is still 201.3MB. Free memory is still 125.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 244.52ms. Allocated memory is still 142.6MB. Free memory was 104.3MB in the beginning and 90.5MB in the end (delta: 13.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 28.86ms. Allocated memory is still 142.6MB. Free memory was 90.5MB in the beginning and 87.3MB in the end (delta: 3.2MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 32.13ms. Allocated memory is still 142.6MB. Free memory was 87.3MB in the beginning and 83.2MB in the end (delta: 4.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 384.00ms. Allocated memory is still 142.6MB. Free memory was 83.2MB in the beginning and 62.2MB in the end (delta: 21.0MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 1522.87ms. Allocated memory is still 142.6MB. Free memory was 62.2MB in the beginning and 37.8MB in the end (delta: 24.4MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. * Witness Printer took 2.68ms. Allocated memory is still 142.6MB. Free memory is still 37.1MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 144, overapproximation of someBinaryFLOATComparisonOperation at line 133, overapproximation of someBinaryFLOATComparisonOperation at line 127, overapproximation of someBinaryFLOATComparisonOperation at line 74, overapproximation of someBinaryFLOATComparisonOperation at line 125, overapproximation of someBinaryDOUBLEComparisonOperation at line 73, overapproximation of someBinaryDOUBLEComparisonOperation at line 116, overapproximation of someBinaryDOUBLEComparisonOperation at line 120, overapproximation of someBinaryDOUBLEComparisonOperation at line 82, overapproximation of someBinaryDOUBLEComparisonOperation at line 118, overapproximation of someBinaryDOUBLEComparisonOperation at line 144. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed long int var_1_1 = -256; [L23] unsigned char var_1_2 = 1; [L24] unsigned char var_1_3 = 5; [L25] unsigned char var_1_4 = 5; [L26] signed short int var_1_5 = -256; [L27] unsigned char var_1_6 = 1; [L28] double var_1_7 = 256.25; [L29] double var_1_8 = 127.8; [L30] double var_1_9 = 100.5; [L31] unsigned char var_1_10 = 0; [L32] unsigned char var_1_11 = 0; [L33] float var_1_12 = 999.75; [L34] float var_1_13 = 64.5; [L35] float var_1_14 = 127.25; [L36] signed char var_1_15 = -32; [L37] float var_1_16 = 32.7; [L38] unsigned char var_1_17 = 16; [L39] unsigned char var_1_18 = 32; [L40] unsigned short int var_1_19 = 5; [L41] unsigned char var_1_20 = 0; [L42] signed long int var_1_21 = 100; [L43] signed short int var_1_22 = 50; [L44] double var_1_23 = 1000000.75; [L148] isInitial = 1 [L149] FCALL initially() [L150] COND TRUE 1 [L151] FCALL updateLastVariables() [L152] CALL updateVariables() [L103] var_1_2 = __VERIFIER_nondet_uchar() [L104] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L104] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L105] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L105] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=5, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L106] var_1_3 = __VERIFIER_nondet_uchar() [L107] CALL assume_abort_if_not(var_1_3 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L107] RET assume_abort_if_not(var_1_3 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L108] CALL assume_abort_if_not(var_1_3 <= 255) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L108] RET assume_abort_if_not(var_1_3 <= 255) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_4=5, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L109] var_1_4 = __VERIFIER_nondet_uchar() [L110] CALL assume_abort_if_not(var_1_4 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L110] RET assume_abort_if_not(var_1_4 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L111] CALL assume_abort_if_not(var_1_4 <= 255) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L111] RET assume_abort_if_not(var_1_4 <= 255) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L112] var_1_6 = __VERIFIER_nondet_uchar() [L113] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L113] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L114] CALL assume_abort_if_not(var_1_6 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L114] RET assume_abort_if_not(var_1_6 <= 1) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_7=1025/4, var_1_8=639/5, var_1_9=201/2] [L115] var_1_7 = __VERIFIER_nondet_double() [L116] CALL assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_8=639/5, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_8=639/5, var_1_9=201/2] [L116] RET assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_8=639/5, var_1_9=201/2] [L117] var_1_8 = __VERIFIER_nondet_double() [L118] CALL assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_9=201/2] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_9=201/2] [L118] RET assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1, var_1_9=201/2] [L119] var_1_9 = __VERIFIER_nondet_double() [L120] 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=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L120] 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=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L121] var_1_11 = __VERIFIER_nondet_uchar() [L122] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L122] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, var_1_10=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L123] CALL assume_abort_if_not(var_1_11 <= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L123] RET assume_abort_if_not(var_1_11 <= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_13=129/2, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L124] var_1_13 = __VERIFIER_nondet_float() [L125] CALL assume_abort_if_not((var_1_13 >= -922337.2036854765600e+13F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L125] RET assume_abort_if_not((var_1_13 >= -922337.2036854765600e+13F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_14=509/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L126] var_1_14 = __VERIFIER_nondet_float() [L127] CALL assume_abort_if_not((var_1_14 >= -922337.2036854765600e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854765600e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L127] RET assume_abort_if_not((var_1_14 >= -922337.2036854765600e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854765600e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=-32, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L128] var_1_15 = __VERIFIER_nondet_char() [L129] CALL assume_abort_if_not(var_1_15 >= -128) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L129] RET assume_abort_if_not(var_1_15 >= -128) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L130] CALL assume_abort_if_not(var_1_15 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L130] RET assume_abort_if_not(var_1_15 <= 127) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L131] CALL assume_abort_if_not(var_1_15 != 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L131] RET assume_abort_if_not(var_1_15 != 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_16=327/10, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L132] var_1_16 = __VERIFIER_nondet_float() [L133] CALL assume_abort_if_not((var_1_16 >= -461168.6018427382800e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 4611686.018427382800e+12F && var_1_16 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L133] RET assume_abort_if_not((var_1_16 >= -461168.6018427382800e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 4611686.018427382800e+12F && var_1_16 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=32, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L134] var_1_18 = __VERIFIER_nondet_uchar() [L135] CALL assume_abort_if_not(var_1_18 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L135] RET assume_abort_if_not(var_1_18 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L136] CALL assume_abort_if_not(var_1_18 <= 254) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L136] RET assume_abort_if_not(var_1_18 <= 254) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=0, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L137] var_1_20 = __VERIFIER_nondet_uchar() [L138] CALL assume_abort_if_not(var_1_20 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L138] RET assume_abort_if_not(var_1_20 >= 0) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L139] CALL assume_abort_if_not(var_1_20 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L139] RET assume_abort_if_not(var_1_20 <= 1) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_5=-256, var_1_6=1] [L152] RET updateVariables() [L153] CALL step() [L48] signed long int stepLocal_2 = 256; [L49] unsigned char stepLocal_1 = var_1_3 >= var_1_4; [L50] unsigned char stepLocal_0 = var_1_4; VAL [isInitial=1, stepLocal_0=2, stepLocal_1=1, stepLocal_2=256, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-256, var_1_6=1] [L51] COND TRUE var_1_2 && stepLocal_1 VAL [isInitial=1, stepLocal_0=2, stepLocal_2=256, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=-256, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-256, var_1_6=1] [L52] COND TRUE stepLocal_2 != var_1_3 [L53] var_1_1 = (var_1_4 + var_1_3) VAL [isInitial=1, stepLocal_0=2, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-256, var_1_6=1] [L62] unsigned char stepLocal_3 = var_1_2; VAL [isInitial=1, stepLocal_0=2, stepLocal_3=1, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-256, var_1_6=1] [L63] COND TRUE stepLocal_3 && var_1_6 [L64] var_1_5 = ((((var_1_4) < (-100)) ? (var_1_4) : (-100))) VAL [isInitial=1, stepLocal_0=2, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L72] var_1_10 = (var_1_6 && var_1_11) VAL [isInitial=1, stepLocal_0=2, var_1_10=0, var_1_11=0, var_1_12=3999/4, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L73] COND TRUE ! (var_1_9 <= var_1_7) [L74] var_1_12 = ((((var_1_13) < (var_1_14)) ? (var_1_13) : (var_1_14))) VAL [isInitial=1, stepLocal_0=2, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L82] COND FALSE !(var_1_8 != ((((var_1_14) < 0 ) ? -(var_1_14) : (var_1_14)))) VAL [isInitial=1, stepLocal_0=2, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L87] unsigned char stepLocal_5 = var_1_18; [L88] unsigned char stepLocal_4 = var_1_20 || var_1_10; VAL [isInitial=1, stepLocal_0=2, stepLocal_4=1, stepLocal_5=254, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=5, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L89] COND TRUE var_1_4 < stepLocal_5 [L90] var_1_19 = var_1_3 VAL [isInitial=1, stepLocal_0=2, stepLocal_4=1, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=3, var_1_1=5, var_1_20=1, var_1_21=100, var_1_22=50, var_1_23=4000003/4, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L98] var_1_21 = var_1_4 [L99] var_1_22 = var_1_17 [L100] var_1_23 = var_1_14 [L153] RET step() [L154] CALL, EXPR property() [L144-L145] return (((((((((var_1_2 && (var_1_3 >= var_1_4)) ? ((256 != var_1_3) ? (var_1_1 == ((signed long int) (var_1_4 + var_1_3))) : 1) : ((var_1_4 >= var_1_3) ? (var_1_1 == ((signed long int) var_1_3)) : (var_1_1 == ((signed long int) var_1_4)))) && ((var_1_2 && var_1_6) ? (var_1_5 == ((signed short int) ((((var_1_4) < (-100)) ? (var_1_4) : (-100))))) : (((var_1_7 - var_1_8) > var_1_9) ? (var_1_5 == ((signed short int) var_1_3)) : (var_1_5 == ((signed short int) var_1_4))))) && (var_1_10 == ((unsigned char) (var_1_6 && var_1_11)))) && ((! (var_1_9 <= var_1_7)) ? (var_1_12 == ((float) ((((var_1_13) < (var_1_14)) ? (var_1_13) : (var_1_14))))) : (((((((var_1_1) > (var_1_5)) ? (var_1_1) : (var_1_5))) / var_1_15) < var_1_4) ? (var_1_12 == ((float) var_1_13)) : (var_1_12 == ((float) (var_1_16 + 49.6f)))))) && ((var_1_8 != ((((var_1_14) < 0 ) ? -(var_1_14) : (var_1_14)))) ? (var_1_2 ? (var_1_17 == ((unsigned char) var_1_18)) : 1) : 1)) && ((var_1_4 < var_1_18) ? (var_1_19 == ((unsigned short int) var_1_3)) : (((var_1_20 || var_1_10) || var_1_6) ? (var_1_19 == ((unsigned short int) var_1_3)) : (var_1_19 == ((unsigned short int) var_1_4))))) && (var_1_21 == ((signed long int) var_1_4))) && (var_1_22 == ((signed short int) var_1_17))) && (var_1_23 == ((double) var_1_14)) ; [L154] RET, EXPR property() [L154] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=3, var_1_1=5, var_1_20=1, var_1_21=2, var_1_22=16, var_1_23=3, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] [L19] reach_error() VAL [isInitial=1, var_1_10=0, var_1_11=0, var_1_12=2, var_1_13=2, var_1_14=3, var_1_15=2, var_1_17=16, var_1_18=254, var_1_19=3, var_1_1=5, var_1_20=1, var_1_21=2, var_1_22=16, var_1_23=3, var_1_2=1, var_1_3=3, var_1_4=2, var_1_5=-100, var_1_6=1] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 64 locations, 122 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.4s, OverallIterations: 2, TraceHistogramMax: 23, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 95 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 95 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 144 GetRequests, 144 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=64occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 0.2s InterpolantComputationTime, 572 NumberOfCodeBlocks, 572 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 284 ConstructedInterpolants, 0 QuantifiedInterpolants, 284 SizeOfPredicates, 0 NumberOfNonLiveVariables, 340 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 1980/2024 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-03-16 23:17:54,096 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash cbb57c0f29593d448f6879a3daeafb96125f4bb18be9c5e7e39686d9980eafd0 --- Real Ultimate output --- This is Ultimate 0.3.0-?-8fc3dc6-m [2025-03-16 23:17:55,870 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-16 23:17:55,973 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-16 23:17:55,978 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-16 23:17:55,980 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-16 23:17:55,999 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-16 23:17:56,001 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-16 23:17:56,001 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-16 23:17:56,001 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-16 23:17:56,001 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-16 23:17:56,002 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-16 23:17:56,002 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-16 23:17:56,002 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-16 23:17:56,002 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-16 23:17:56,002 INFO L153 SettingsManager]: * Use SBE=true [2025-03-16 23:17:56,003 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-16 23:17:56,003 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-16 23:17:56,003 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-16 23:17:56,003 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-16 23:17:56,003 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-16 23:17:56,003 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-16 23:17:56,004 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-16 23:17:56,004 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-16 23:17:56,005 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-16 23:17:56,005 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-16 23:17:56,006 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-16 23:17:56,006 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-16 23:17:56,006 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-16 23:17:56,006 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-16 23:17:56,006 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> cbb57c0f29593d448f6879a3daeafb96125f4bb18be9c5e7e39686d9980eafd0 [2025-03-16 23:17:56,260 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-16 23:17:56,265 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-16 23:17:56,266 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-16 23:17:56,267 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-16 23:17:56,267 INFO L274 PluginConnector]: CDTParser initialized [2025-03-16 23:17:56,269 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:57,439 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6afeb2034/fa60ec00a4164f64ab4d01ef4c766580/FLAG2893e8ea8 [2025-03-16 23:17:57,628 INFO L384 CDTParser]: Found 1 translation units. [2025-03-16 23:17:57,629 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:57,636 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6afeb2034/fa60ec00a4164f64ab4d01ef4c766580/FLAG2893e8ea8 [2025-03-16 23:17:57,649 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6afeb2034/fa60ec00a4164f64ab4d01ef4c766580 [2025-03-16 23:17:57,653 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-16 23:17:57,654 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-16 23:17:57,655 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-16 23:17:57,656 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-16 23:17:57,659 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-16 23:17:57,660 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,660 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4183e0be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57, skipping insertion in model container [2025-03-16 23:17:57,661 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,676 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-16 23:17:57,784 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i[917,930] [2025-03-16 23:17:57,834 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-16 23:17:57,844 INFO L200 MainTranslator]: Completed pre-run [2025-03-16 23:17:57,852 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_codestructure_steplocals_file-25.i[917,930] [2025-03-16 23:17:57,869 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-16 23:17:57,883 INFO L204 MainTranslator]: Completed translation [2025-03-16 23:17:57,883 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57 WrapperNode [2025-03-16 23:17:57,883 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-16 23:17:57,884 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-16 23:17:57,884 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-16 23:17:57,884 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-16 23:17:57,889 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,903 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,924 INFO L138 Inliner]: procedures = 27, calls = 36, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 153 [2025-03-16 23:17:57,929 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-16 23:17:57,929 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-16 23:17:57,929 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-16 23:17:57,929 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-16 23:17:57,936 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,937 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,943 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,960 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-16 23:17:57,964 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,965 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,971 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,972 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,979 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,980 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,982 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-16 23:17:57,982 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-16 23:17:57,986 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-16 23:17:57,987 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-16 23:17:57,987 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (1/1) ... [2025-03-16 23:17:57,991 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-16 23:17:58,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-16 23:17:58,014 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-16 23:17:58,017 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-16 23:17:58,036 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-16 23:17:58,036 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-16 23:17:58,036 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-16 23:17:58,036 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-16 23:17:58,037 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-16 23:17:58,037 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-16 23:17:58,106 INFO L256 CfgBuilder]: Building ICFG [2025-03-16 23:17:58,108 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-16 23:17:59,425 INFO L? ?]: Removed 18 outVars from TransFormulas that were not future-live. [2025-03-16 23:17:59,425 INFO L307 CfgBuilder]: Performing block encoding [2025-03-16 23:17:59,447 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-16 23:17:59,449 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-16 23:17:59,449 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 16.03 11:17:59 BoogieIcfgContainer [2025-03-16 23:17:59,449 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-16 23:17:59,451 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-16 23:17:59,451 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-16 23:17:59,455 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-16 23:17:59,456 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 16.03 11:17:57" (1/3) ... [2025-03-16 23:17:59,456 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@879ea52 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 16.03 11:17:59, skipping insertion in model container [2025-03-16 23:17:59,456 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.03 11:17:57" (2/3) ... [2025-03-16 23:17:59,457 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@879ea52 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 16.03 11:17:59, skipping insertion in model container [2025-03-16 23:17:59,457 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 16.03 11:17:59" (3/3) ... [2025-03-16 23:17:59,458 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_codestructure_steplocals_file-25.i [2025-03-16 23:17:59,468 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-16 23:17:59,469 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_codestructure_steplocals_file-25.i that has 2 procedures, 64 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-16 23:17:59,506 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-16 23:17:59,513 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;@367e44f4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-16 23:17:59,513 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-16 23:17:59,516 INFO L276 IsEmpty]: Start isEmpty. Operand has 64 states, 38 states have (on average 1.394736842105263) internal successors, (53), 39 states have internal predecessors, (53), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2025-03-16 23:17:59,523 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2025-03-16 23:17:59,523 INFO L210 NwaCegarLoop]: Found error trace [2025-03-16 23:17:59,524 INFO L218 NwaCegarLoop]: trace histogram [23, 23, 23, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-16 23:17:59,524 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-16 23:17:59,527 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-16 23:17:59,528 INFO L85 PathProgramCache]: Analyzing trace with hash -550656750, now seen corresponding path program 1 times [2025-03-16 23:17:59,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-16 23:17:59,535 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [736699918] [2025-03-16 23:17:59,535 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:17:59,535 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-16 23:17:59,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-16 23:17:59,539 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-16 23:17:59,541 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2025-03-16 23:17:59,615 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:17:59,810 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:17:59,811 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:17:59,811 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-16 23:17:59,820 INFO L256 TraceCheckSpWp]: Trace formula consists of 240 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-16 23:17:59,826 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-16 23:17:59,852 INFO L134 CoverageAnalysis]: Checked inductivity of 1012 backedges. 524 proven. 0 refuted. 0 times theorem prover too weak. 488 trivial. 0 not checked. [2025-03-16 23:17:59,852 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-16 23:17:59,853 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-16 23:17:59,853 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [736699918] [2025-03-16 23:17:59,853 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [736699918] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-16 23:17:59,853 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-16 23:17:59,854 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-16 23:17:59,855 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1583093308] [2025-03-16 23:17:59,855 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-16 23:17:59,858 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-16 23:17:59,858 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-16 23:17:59,871 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-16 23:17:59,871 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-16 23:17:59,872 INFO L87 Difference]: Start difference. First operand has 64 states, 38 states have (on average 1.394736842105263) internal successors, (53), 39 states have internal predecessors, (53), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand has 2 states, 2 states have (on average 17.5) internal successors, (35), 2 states have internal predecessors, (35), 2 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (23), 2 states have call predecessors, (23), 2 states have call successors, (23) [2025-03-16 23:17:59,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-16 23:17:59,890 INFO L93 Difference]: Finished difference Result 125 states and 219 transitions. [2025-03-16 23:17:59,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-16 23:17:59,892 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 17.5) internal successors, (35), 2 states have internal predecessors, (35), 2 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (23), 2 states have call predecessors, (23), 2 states have call successors, (23) Word has length 143 [2025-03-16 23:17:59,892 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-16 23:17:59,898 INFO L225 Difference]: With dead ends: 125 [2025-03-16 23:17:59,899 INFO L226 Difference]: Without dead ends: 62 [2025-03-16 23:17:59,901 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 142 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-16 23:17:59,903 INFO L435 NwaCegarLoop]: 95 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 95 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-16 23:17:59,903 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 95 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-16 23:17:59,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2025-03-16 23:17:59,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 62. [2025-03-16 23:17:59,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 37 states have (on average 1.3243243243243243) internal successors, (49), 37 states have internal predecessors, (49), 23 states have call successors, (23), 1 states have call predecessors, (23), 1 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2025-03-16 23:17:59,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 95 transitions. [2025-03-16 23:17:59,929 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 95 transitions. Word has length 143 [2025-03-16 23:17:59,929 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-16 23:17:59,929 INFO L471 AbstractCegarLoop]: Abstraction has 62 states and 95 transitions. [2025-03-16 23:17:59,929 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 17.5) internal successors, (35), 2 states have internal predecessors, (35), 2 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (23), 2 states have call predecessors, (23), 2 states have call successors, (23) [2025-03-16 23:17:59,929 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 95 transitions. [2025-03-16 23:17:59,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2025-03-16 23:17:59,933 INFO L210 NwaCegarLoop]: Found error trace [2025-03-16 23:17:59,933 INFO L218 NwaCegarLoop]: trace histogram [23, 23, 23, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-16 23:17:59,942 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2025-03-16 23:18:00,134 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-16 23:18:00,135 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-16 23:18:00,135 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-16 23:18:00,135 INFO L85 PathProgramCache]: Analyzing trace with hash -1127479919, now seen corresponding path program 1 times [2025-03-16 23:18:00,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-16 23:18:00,136 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [35795856] [2025-03-16 23:18:00,136 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-16 23:18:00,136 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-16 23:18:00,137 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-16 23:18:00,139 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-16 23:18:00,141 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-03-16 23:18:00,194 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 143 statements into 1 equivalence classes. [2025-03-16 23:18:00,389 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 143 of 143 statements. [2025-03-16 23:18:00,389 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-16 23:18:00,390 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-16 23:18:00,399 INFO L256 TraceCheckSpWp]: Trace formula consists of 240 conjuncts, 23 conjuncts are in the unsatisfiable core [2025-03-16 23:18:00,422 INFO L279 TraceCheckSpWp]: Computing forward predicates...