./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/unreach-call.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 4a390ef5 Calling Ultimate with: /root/.sdkman/candidates/java/current/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.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.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 509571b928f0e2dfbb1c09fe2b4934eac01a43200c8a3311413a2cff66ec306f --- Real Ultimate output --- This is Ultimate 0.2.5-dev-4a390ef-m [2024-10-24 09:37:26,150 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-24 09:37:26,209 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-10-24 09:37:26,213 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-24 09:37:26,214 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-24 09:37:26,232 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-24 09:37:26,233 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-24 09:37:26,233 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-24 09:37:26,233 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-24 09:37:26,234 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-24 09:37:26,234 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-24 09:37:26,234 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-24 09:37:26,235 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-24 09:37:26,235 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-24 09:37:26,235 INFO L153 SettingsManager]: * Use SBE=true [2024-10-24 09:37:26,235 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-24 09:37:26,236 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-24 09:37:26,236 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-24 09:37:26,236 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-24 09:37:26,236 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-24 09:37:26,237 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-24 09:37:26,237 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-24 09:37:26,237 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-24 09:37:26,237 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-24 09:37:26,238 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-24 09:37:26,238 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-24 09:37:26,238 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-24 09:37:26,238 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-24 09:37:26,239 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-24 09:37:26,239 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-24 09:37:26,239 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-24 09:37:26,239 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-24 09:37:26,239 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-24 09:37:26,240 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-24 09:37:26,240 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-24 09:37:26,240 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-24 09:37:26,240 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-24 09:37:26,241 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-10-24 09:37:26,241 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-24 09:37:26,241 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-24 09:37:26,241 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-24 09:37:26,242 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-24 09:37:26,242 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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 -> 509571b928f0e2dfbb1c09fe2b4934eac01a43200c8a3311413a2cff66ec306f [2024-10-24 09:37:26,428 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-24 09:37:26,446 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-24 09:37:26,449 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-24 09:37:26,450 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-24 09:37:26,450 INFO L274 PluginConnector]: CDTParser initialized [2024-10-24 09:37:26,451 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:37:27,728 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-24 09:37:27,891 INFO L384 CDTParser]: Found 1 translation units. [2024-10-24 09:37:27,892 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:37:27,902 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6adf1372f/3d4317e36b4946aa9e775e3073a5ebbb/FLAG5940ec6ab [2024-10-24 09:37:28,281 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6adf1372f/3d4317e36b4946aa9e775e3073a5ebbb [2024-10-24 09:37:28,283 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-24 09:37:28,284 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-24 09:37:28,286 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-24 09:37:28,286 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-24 09:37:28,290 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-24 09:37:28,291 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,291 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2fd3c68c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28, skipping insertion in model container [2024-10-24 09:37:28,292 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,309 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-24 09:37:28,426 WARN L248 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_loopvsstraightlinecode_25-while_file-45.i[915,928] [2024-10-24 09:37:28,480 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-24 09:37:28,490 INFO L200 MainTranslator]: Completed pre-run [2024-10-24 09:37:28,501 WARN L248 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_loopvsstraightlinecode_25-while_file-45.i[915,928] [2024-10-24 09:37:28,526 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-24 09:37:28,542 INFO L204 MainTranslator]: Completed translation [2024-10-24 09:37:28,543 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28 WrapperNode [2024-10-24 09:37:28,543 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-24 09:37:28,544 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-24 09:37:28,544 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-24 09:37:28,545 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-24 09:37:28,549 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,556 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,580 INFO L138 Inliner]: procedures = 26, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 117 [2024-10-24 09:37:28,580 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-24 09:37:28,580 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-24 09:37:28,580 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-24 09:37:28,581 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-24 09:37:28,589 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,590 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,592 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,603 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]. [2024-10-24 09:37:28,607 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,607 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,611 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,617 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,618 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,619 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,620 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-24 09:37:28,621 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-24 09:37:28,621 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-24 09:37:28,621 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-24 09:37:28,622 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (1/1) ... [2024-10-24 09:37:28,630 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-24 09:37:28,643 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-24 09:37:28,657 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) [2024-10-24 09:37:28,659 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 [2024-10-24 09:37:28,713 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-24 09:37:28,714 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2024-10-24 09:37:28,714 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2024-10-24 09:37:28,714 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-24 09:37:28,715 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-24 09:37:28,715 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-24 09:37:28,802 INFO L238 CfgBuilder]: Building ICFG [2024-10-24 09:37:28,804 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-24 09:37:28,984 INFO L? ?]: Removed 10 outVars from TransFormulas that were not future-live. [2024-10-24 09:37:28,984 INFO L287 CfgBuilder]: Performing block encoding [2024-10-24 09:37:29,023 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-24 09:37:29,023 INFO L314 CfgBuilder]: Removed 1 assume(true) statements. [2024-10-24 09:37:29,023 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 24.10 09:37:29 BoogieIcfgContainer [2024-10-24 09:37:29,024 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-24 09:37:29,029 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-24 09:37:29,029 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-24 09:37:29,031 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-24 09:37:29,031 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 24.10 09:37:28" (1/3) ... [2024-10-24 09:37:29,032 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62291e6c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 24.10 09:37:29, skipping insertion in model container [2024-10-24 09:37:29,032 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:37:28" (2/3) ... [2024-10-24 09:37:29,032 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62291e6c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 24.10 09:37:29, skipping insertion in model container [2024-10-24 09:37:29,033 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 24.10 09:37:29" (3/3) ... [2024-10-24 09:37:29,033 INFO L112 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:37:29,045 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-24 09:37:29,045 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-10-24 09:37:29,093 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-24 09:37:29,098 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;@64bbc297, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-24 09:37:29,099 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-10-24 09:37:29,101 INFO L276 IsEmpty]: Start isEmpty. Operand has 48 states, 26 states have (on average 1.3461538461538463) internal successors, (35), 27 states have internal predecessors, (35), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2024-10-24 09:37:29,111 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2024-10-24 09:37:29,112 INFO L207 NwaCegarLoop]: Found error trace [2024-10-24 09:37:29,113 INFO L215 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-24 09:37:29,113 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-24 09:37:29,118 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-24 09:37:29,118 INFO L85 PathProgramCache]: Analyzing trace with hash -10547607, now seen corresponding path program 1 times [2024-10-24 09:37:29,125 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-24 09:37:29,125 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [694400009] [2024-10-24 09:37:29,125 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-24 09:37:29,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-24 09:37:29,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,387 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-24 09:37:34,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,392 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2024-10-24 09:37:34,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,394 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2024-10-24 09:37:34,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,396 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2024-10-24 09:37:34,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,398 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2024-10-24 09:37:34,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,400 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 31 [2024-10-24 09:37:34,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,435 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 36 [2024-10-24 09:37:34,438 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,445 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 42 [2024-10-24 09:37:34,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,455 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 47 [2024-10-24 09:37:34,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,466 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 53 [2024-10-24 09:37:34,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,470 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 58 [2024-10-24 09:37:34,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,474 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 64 [2024-10-24 09:37:34,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,478 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 69 [2024-10-24 09:37:34,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,481 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 75 [2024-10-24 09:37:34,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,494 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 80 [2024-10-24 09:37:34,496 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,498 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 86 [2024-10-24 09:37:34,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,501 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 91 [2024-10-24 09:37:34,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,505 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 97 [2024-10-24 09:37:34,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,509 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 102 [2024-10-24 09:37:34,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,513 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 60 proven. 120 refuted. 0 times theorem prover too weak. 504 trivial. 0 not checked. [2024-10-24 09:37:34,514 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-24 09:37:34,514 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [694400009] [2024-10-24 09:37:34,515 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [694400009] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-24 09:37:34,515 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1642519137] [2024-10-24 09:37:34,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-24 09:37:34,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-24 09:37:34,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-24 09:37:34,517 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) [2024-10-24 09:37:34,518 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2024-10-24 09:37:34,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:37:34,710 INFO L255 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 50 conjuncts are in the unsatisfiable core [2024-10-24 09:37:34,717 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-24 09:37:36,302 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 459 proven. 153 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2024-10-24 09:37:36,302 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-24 09:37:39,938 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 135 proven. 144 refuted. 0 times theorem prover too weak. 405 trivial. 0 not checked. [2024-10-24 09:37:39,939 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1642519137] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-24 09:37:39,939 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-24 09:37:39,939 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 25, 22] total 50 [2024-10-24 09:37:39,941 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [358445890] [2024-10-24 09:37:39,942 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-24 09:37:39,946 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 50 states [2024-10-24 09:37:39,946 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-24 09:37:39,967 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 50 interpolants. [2024-10-24 09:37:39,969 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=556, Invalid=1894, Unknown=0, NotChecked=0, Total=2450 [2024-10-24 09:37:39,971 INFO L87 Difference]: Start difference. First operand has 48 states, 26 states have (on average 1.3461538461538463) internal successors, (35), 27 states have internal predecessors, (35), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand has 50 states, 46 states have (on average 1.934782608695652) internal successors, (89), 42 states have internal predecessors, (89), 16 states have call successors, (45), 8 states have call predecessors, (45), 16 states have return successors, (47), 16 states have call predecessors, (47), 16 states have call successors, (47) [2024-10-24 09:37:49,302 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [0] [2024-10-24 09:37:56,943 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [0] [2024-10-24 09:37:59,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-24 09:37:59,522 INFO L93 Difference]: Finished difference Result 246 states and 395 transitions. [2024-10-24 09:37:59,525 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 67 states. [2024-10-24 09:37:59,527 INFO L78 Accepts]: Start accepts. Automaton has has 50 states, 46 states have (on average 1.934782608695652) internal successors, (89), 42 states have internal predecessors, (89), 16 states have call successors, (45), 8 states have call predecessors, (45), 16 states have return successors, (47), 16 states have call predecessors, (47), 16 states have call successors, (47) Word has length 115 [2024-10-24 09:37:59,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2024-10-24 09:37:59,534 INFO L225 Difference]: With dead ends: 246 [2024-10-24 09:37:59,535 INFO L226 Difference]: Without dead ends: 199 [2024-10-24 09:37:59,540 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 340 GetRequests, 243 SyntacticMatches, 0 SemanticMatches, 97 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2485 ImplicationChecksByTransitivity, 8.5s TimeCoverageRelationStatistics Valid=2616, Invalid=7086, Unknown=0, NotChecked=0, Total=9702 [2024-10-24 09:37:59,542 INFO L432 NwaCegarLoop]: 72 mSDtfsCounter, 525 mSDsluCounter, 345 mSDsCounter, 0 mSdLazyCounter, 1023 mSolverCounterSat, 379 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 14.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 527 SdHoareTripleChecker+Valid, 417 SdHoareTripleChecker+Invalid, 1404 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 379 IncrementalHoareTripleChecker+Valid, 1023 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 14.4s IncrementalHoareTripleChecker+Time [2024-10-24 09:37:59,542 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [527 Valid, 417 Invalid, 1404 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [379 Valid, 1023 Invalid, 2 Unknown, 0 Unchecked, 14.4s Time] [2024-10-24 09:37:59,559 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 199 states. [2024-10-24 09:37:59,612 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 199 to 165. [2024-10-24 09:37:59,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 165 states, 104 states have (on average 1.1153846153846154) internal successors, (116), 105 states have internal predecessors, (116), 43 states have call successors, (43), 17 states have call predecessors, (43), 17 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2024-10-24 09:37:59,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 202 transitions. [2024-10-24 09:37:59,616 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 202 transitions. Word has length 115 [2024-10-24 09:37:59,617 INFO L84 Accepts]: Finished accepts. word is rejected. [2024-10-24 09:37:59,617 INFO L471 AbstractCegarLoop]: Abstraction has 165 states and 202 transitions. [2024-10-24 09:37:59,618 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 50 states, 46 states have (on average 1.934782608695652) internal successors, (89), 42 states have internal predecessors, (89), 16 states have call successors, (45), 8 states have call predecessors, (45), 16 states have return successors, (47), 16 states have call predecessors, (47), 16 states have call successors, (47) [2024-10-24 09:37:59,618 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 202 transitions. [2024-10-24 09:37:59,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2024-10-24 09:37:59,620 INFO L207 NwaCegarLoop]: Found error trace [2024-10-24 09:37:59,620 INFO L215 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-24 09:37:59,635 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2024-10-24 09:37:59,821 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 [2024-10-24 09:37:59,821 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-24 09:37:59,821 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-24 09:37:59,822 INFO L85 PathProgramCache]: Analyzing trace with hash -10488025, now seen corresponding path program 1 times [2024-10-24 09:37:59,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-24 09:37:59,822 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1413485041] [2024-10-24 09:37:59,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-24 09:37:59,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-24 09:37:59,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-24 09:37:59,898 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-24 09:37:59,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-24 09:37:59,991 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-24 09:37:59,991 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-10-24 09:37:59,992 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2024-10-24 09:37:59,994 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-10-24 09:37:59,996 INFO L407 BasicCegarLoop]: Path program histogram: [1, 1] [2024-10-24 09:38:00,069 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-10-24 09:38:00,072 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 24.10 09:38:00 BoogieIcfgContainer [2024-10-24 09:38:00,072 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-10-24 09:38:00,073 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-10-24 09:38:00,073 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-10-24 09:38:00,073 INFO L274 PluginConnector]: Witness Printer initialized [2024-10-24 09:38:00,074 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 24.10 09:37:29" (3/4) ... [2024-10-24 09:38:00,075 INFO L142 WitnessPrinter]: No result that supports witness generation found [2024-10-24 09:38:00,076 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-10-24 09:38:00,077 INFO L158 Benchmark]: Toolchain (without parser) took 31792.13ms. Allocated memory was 155.2MB in the beginning and 371.2MB in the end (delta: 216.0MB). Free memory was 82.2MB in the beginning and 283.9MB in the end (delta: -201.7MB). Peak memory consumption was 15.9MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,077 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 155.2MB. Free memory was 105.2MB in the beginning and 105.0MB in the end (delta: 159.4kB). There was no memory consumed. Max. memory is 16.1GB. [2024-10-24 09:38:00,079 INFO L158 Benchmark]: CACSL2BoogieTranslator took 257.45ms. Allocated memory is still 155.2MB. Free memory was 82.0MB in the beginning and 67.9MB in the end (delta: 14.1MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,081 INFO L158 Benchmark]: Boogie Procedure Inliner took 36.15ms. Allocated memory is still 155.2MB. Free memory was 67.9MB in the beginning and 65.6MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,082 INFO L158 Benchmark]: Boogie Preprocessor took 39.93ms. Allocated memory is still 155.2MB. Free memory was 65.6MB in the beginning and 62.9MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,082 INFO L158 Benchmark]: RCFGBuilder took 402.91ms. Allocated memory was 155.2MB in the beginning and 211.8MB in the end (delta: 56.6MB). Free memory was 62.9MB in the beginning and 168.8MB in the end (delta: -105.9MB). Peak memory consumption was 12.5MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,082 INFO L158 Benchmark]: TraceAbstraction took 31043.53ms. Allocated memory was 211.8MB in the beginning and 371.2MB in the end (delta: 159.4MB). Free memory was 167.8MB in the beginning and 284.9MB in the end (delta: -117.2MB). Peak memory consumption was 41.1MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,083 INFO L158 Benchmark]: Witness Printer took 2.93ms. Allocated memory is still 371.2MB. Free memory was 284.9MB in the beginning and 283.9MB in the end (delta: 1.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-24 09:38:00,088 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.15ms. Allocated memory is still 155.2MB. Free memory was 105.2MB in the beginning and 105.0MB in the end (delta: 159.4kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 257.45ms. Allocated memory is still 155.2MB. Free memory was 82.0MB in the beginning and 67.9MB in the end (delta: 14.1MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 36.15ms. Allocated memory is still 155.2MB. Free memory was 67.9MB in the beginning and 65.6MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 39.93ms. Allocated memory is still 155.2MB. Free memory was 65.6MB in the beginning and 62.9MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 402.91ms. Allocated memory was 155.2MB in the beginning and 211.8MB in the end (delta: 56.6MB). Free memory was 62.9MB in the beginning and 168.8MB in the end (delta: -105.9MB). Peak memory consumption was 12.5MB. Max. memory is 16.1GB. * TraceAbstraction took 31043.53ms. Allocated memory was 211.8MB in the beginning and 371.2MB in the end (delta: 159.4MB). Free memory was 167.8MB in the beginning and 284.9MB in the end (delta: -117.2MB). Peak memory consumption was 41.1MB. Max. memory is 16.1GB. * Witness Printer took 2.93ms. Allocated memory is still 371.2MB. Free memory was 284.9MB in the beginning and 283.9MB in the end (delta: 1.1MB). Peak memory consumption was 2.1MB. 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 someBinaryDOUBLEComparisonOperation at line 93. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] double var_1_1 = 999999.2; [L23] double var_1_6 = 0.0; [L24] double var_1_7 = 5.9; [L25] double var_1_8 = 255.6; [L26] unsigned long int var_1_9 = 4; [L27] unsigned char var_1_10 = 0; [L28] unsigned long int var_1_11 = 1142722175; [L29] unsigned long int var_1_12 = 1231257437; [L30] signed char var_1_13 = -10; [L31] signed char var_1_14 = 100; [L32] signed char var_1_15 = 4; [L33] signed char var_1_16 = 64; [L34] signed char var_1_17 = 1; [L35] signed char var_1_18 = -8; [L36] unsigned char var_1_19 = 4; [L97] isInitial = 1 [L98] FCALL initially() [L99] COND TRUE 1 [L100] FCALL updateLastVariables() [L101] CALL updateVariables() [L59] var_1_6 = __VERIFIER_nondet_double() [L60] CALL assume_abort_if_not((var_1_6 >= 4611686.018427382800e+12F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854765600e+12F && var_1_6 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_7=59/10, var_1_8=1278/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_7=59/10, var_1_8=1278/5, var_1_9=4] [L60] RET assume_abort_if_not((var_1_6 >= 4611686.018427382800e+12F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854765600e+12F && var_1_6 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_7=59/10, var_1_8=1278/5, var_1_9=4] [L61] var_1_7 = __VERIFIER_nondet_double() [L62] CALL assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 4611686.018427382800e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_8=1278/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_8=1278/5, var_1_9=4] [L62] RET assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 4611686.018427382800e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_8=1278/5, var_1_9=4] [L63] var_1_8 = __VERIFIER_nondet_double() [L64] CALL assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854765600e+12F && var_1_8 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L64] RET assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854765600e+12F && var_1_8 >= 1.0e-20F )) VAL [isInitial=1, var_1_10=0, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L65] var_1_10 = __VERIFIER_nondet_uchar() [L66] CALL assume_abort_if_not(var_1_10 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L66] RET assume_abort_if_not(var_1_10 >= 0) VAL [isInitial=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L67] CALL assume_abort_if_not(var_1_10 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L67] RET assume_abort_if_not(var_1_10 <= 1) VAL [isInitial=1, var_1_10=1, var_1_11=1142722175, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L68] var_1_11 = __VERIFIER_nondet_ulong() [L69] CALL assume_abort_if_not(var_1_11 >= 1073741823) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L69] RET assume_abort_if_not(var_1_11 >= 1073741823) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L70] CALL assume_abort_if_not(var_1_11 <= 2147483647) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L70] RET assume_abort_if_not(var_1_11 <= 2147483647) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=1231257437, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L71] var_1_12 = __VERIFIER_nondet_ulong() [L72] CALL assume_abort_if_not(var_1_12 >= 1073741824) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L72] RET assume_abort_if_not(var_1_12 >= 1073741824) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L73] CALL assume_abort_if_not(var_1_12 <= 2147483647) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L73] RET assume_abort_if_not(var_1_12 <= 2147483647) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=100, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L74] var_1_14 = __VERIFIER_nondet_char() [L75] CALL assume_abort_if_not(var_1_14 >= -1) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L75] RET assume_abort_if_not(var_1_14 >= -1) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L76] CALL assume_abort_if_not(var_1_14 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L76] RET assume_abort_if_not(var_1_14 <= 126) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=4, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L77] var_1_15 = __VERIFIER_nondet_char() [L78] CALL assume_abort_if_not(var_1_15 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L78] RET assume_abort_if_not(var_1_15 >= 0) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L79] CALL assume_abort_if_not(var_1_15 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L79] RET assume_abort_if_not(var_1_15 <= 126) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=64, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L80] var_1_16 = __VERIFIER_nondet_char() [L81] CALL assume_abort_if_not(var_1_16 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L81] RET assume_abort_if_not(var_1_16 >= 0) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L82] CALL assume_abort_if_not(var_1_16 <= 126) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L82] RET assume_abort_if_not(var_1_16 <= 126) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=1, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L83] var_1_17 = __VERIFIER_nondet_char() [L84] CALL assume_abort_if_not(var_1_17 >= -63) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L84] RET assume_abort_if_not(var_1_17 >= -63) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L85] CALL assume_abort_if_not(var_1_17 <= 63) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L85] RET assume_abort_if_not(var_1_17 <= 63) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=-8, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L86] var_1_18 = __VERIFIER_nondet_char() [L87] CALL assume_abort_if_not(var_1_18 >= -63) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L87] RET assume_abort_if_not(var_1_18 >= -63) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L88] CALL assume_abort_if_not(var_1_18 <= 63) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L88] RET assume_abort_if_not(var_1_18 <= 63) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=4] [L101] RET updateVariables() [L102] CALL step() [L40] COND TRUE \read(var_1_10) [L41] var_1_9 = ((var_1_11 + var_1_12) - 5u) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=4, var_1_1=4999996/5, var_1_9=-64] [L43] var_1_19 = var_1_16 [L44] unsigned long int stepLocal_0 = ((((var_1_19 + var_1_9)) < (var_1_9)) ? ((var_1_19 + var_1_9)) : (var_1_9)); VAL [isInitial=1, stepLocal_0=-64, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=-10, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=0, var_1_1=4999996/5, var_1_9=-64] [L45] COND TRUE \read(var_1_10) [L46] var_1_13 = (var_1_14 - ((((((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16)))) < (50)) ? (((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16)))) : (50)))) VAL [isInitial=1, stepLocal_0=-64, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=64, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=0, var_1_1=4999996/5, var_1_9=-64] [L52] COND FALSE !((var_1_9 / 32) < (((((var_1_13 + var_1_9)) < (var_1_19)) ? ((var_1_13 + var_1_9)) : (var_1_19)))) [L55] var_1_1 = var_1_6 VAL [isInitial=1, stepLocal_0=-64, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=64, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=0, var_1_1=2147483595, var_1_6=2147483595, var_1_9=-64] [L102] RET step() [L103] CALL, EXPR property() [L93-L94] return (((((var_1_9 / 32) < (((((var_1_13 + var_1_9)) < (var_1_19)) ? ((var_1_13 + var_1_9)) : (var_1_19)))) ? (var_1_1 == ((double) ((var_1_6 - var_1_7) - var_1_8))) : (var_1_1 == ((double) var_1_6))) && (var_1_10 ? (var_1_9 == ((unsigned long int) ((var_1_11 + var_1_12) - 5u))) : 1)) && (var_1_10 ? (var_1_13 == ((signed char) (var_1_14 - ((((((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16)))) < (50)) ? (((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16)))) : (50)))))) : ((var_1_12 < (((((var_1_19 + var_1_9)) < (var_1_9)) ? ((var_1_19 + var_1_9)) : (var_1_9)))) ? (var_1_13 == ((signed char) (var_1_17 + var_1_18))) : 1))) && (var_1_19 == ((unsigned char) var_1_16)) ; [L103] RET, EXPR property() [L103] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=64, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=0, var_1_1=2147483595, var_1_6=2147483595, var_1_9=-64] [L19] reach_error() VAL [isInitial=1, var_1_10=1, var_1_11=2147483590, var_1_12=-2147483649, var_1_13=64, var_1_14=64, var_1_15=126, var_1_16=0, var_1_17=-63, var_1_18=62, var_1_19=0, var_1_1=2147483595, var_1_6=2147483595, var_1_9=-64] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 48 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 30.9s, OverallIterations: 2, TraceHistogramMax: 19, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 19.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 2 mSolverCounterUnknown, 527 SdHoareTripleChecker+Valid, 14.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 525 mSDsluCounter, 417 SdHoareTripleChecker+Invalid, 14.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 345 mSDsCounter, 379 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1023 IncrementalHoareTripleChecker+Invalid, 1404 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 379 mSolverCounterUnsat, 72 mSDtfsCounter, 1023 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 340 GetRequests, 243 SyntacticMatches, 0 SemanticMatches, 97 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2485 ImplicationChecksByTransitivity, 8.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=165occurred in iteration=1, InterpolantAutomatonStates: 67, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 1 MinimizatonAttempts, 34 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 10.2s InterpolantComputationTime, 345 NumberOfCodeBlocks, 345 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 342 ConstructedInterpolants, 3 QuantifiedInterpolants, 4003 SizeOfPredicates, 11 NumberOfNonLiveVariables, 259 ConjunctsInSsa, 50 ConjunctsInUnsatCore, 3 InterpolantComputations, 0 PerfectInterpolantSequences, 1635/2052 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 RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2024-10-24 09:38:00,131 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/current/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.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.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 509571b928f0e2dfbb1c09fe2b4934eac01a43200c8a3311413a2cff66ec306f --- Real Ultimate output --- This is Ultimate 0.2.5-dev-4a390ef-m [2024-10-24 09:38:01,954 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-24 09:38:02,023 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-10-24 09:38:02,027 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-24 09:38:02,027 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-24 09:38:02,052 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-24 09:38:02,052 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-24 09:38:02,052 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-24 09:38:02,053 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-24 09:38:02,053 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-24 09:38:02,053 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-24 09:38:02,053 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-24 09:38:02,054 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-24 09:38:02,054 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-24 09:38:02,054 INFO L153 SettingsManager]: * Use SBE=true [2024-10-24 09:38:02,054 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-24 09:38:02,055 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-24 09:38:02,055 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-24 09:38:02,057 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-24 09:38:02,057 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-24 09:38:02,059 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-24 09:38:02,060 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-24 09:38:02,060 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-24 09:38:02,060 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-10-24 09:38:02,060 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-10-24 09:38:02,060 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-24 09:38:02,062 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-10-24 09:38:02,062 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-24 09:38:02,063 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-24 09:38:02,063 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-24 09:38:02,063 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-24 09:38:02,063 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-24 09:38:02,063 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-24 09:38:02,064 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-10-24 09:38:02,064 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-10-24 09:38:02,065 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-24 09:38:02,066 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-24 09:38:02,066 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-24 09:38:02,067 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-24 09:38:02,067 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-10-24 09:38:02,067 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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 -> 509571b928f0e2dfbb1c09fe2b4934eac01a43200c8a3311413a2cff66ec306f [2024-10-24 09:38:02,336 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-24 09:38:02,355 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-24 09:38:02,358 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-24 09:38:02,359 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-24 09:38:02,359 INFO L274 PluginConnector]: CDTParser initialized [2024-10-24 09:38:02,361 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:38:03,628 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-24 09:38:03,813 INFO L384 CDTParser]: Found 1 translation units. [2024-10-24 09:38:03,814 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:38:03,820 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/73e077955/ee83ca8e214b48a0bfe9bcd04cae05a4/FLAGc1d2ecf29 [2024-10-24 09:38:03,831 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/73e077955/ee83ca8e214b48a0bfe9bcd04cae05a4 [2024-10-24 09:38:03,833 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-24 09:38:03,834 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-24 09:38:03,834 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-24 09:38:03,835 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-24 09:38:03,840 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-24 09:38:03,841 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 24.10 09:38:03" (1/1) ... [2024-10-24 09:38:03,842 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@142687ad and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:03, skipping insertion in model container [2024-10-24 09:38:03,842 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 24.10 09:38:03" (1/1) ... [2024-10-24 09:38:03,861 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-24 09:38:03,994 WARN L248 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_loopvsstraightlinecode_25-while_file-45.i[915,928] [2024-10-24 09:38:04,042 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-24 09:38:04,058 INFO L200 MainTranslator]: Completed pre-run [2024-10-24 09:38:04,070 WARN L248 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_loopvsstraightlinecode_25-while_file-45.i[915,928] [2024-10-24 09:38:04,087 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-24 09:38:04,107 INFO L204 MainTranslator]: Completed translation [2024-10-24 09:38:04,107 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04 WrapperNode [2024-10-24 09:38:04,107 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-24 09:38:04,108 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-24 09:38:04,108 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-24 09:38:04,109 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-24 09:38:04,114 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,128 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,158 INFO L138 Inliner]: procedures = 27, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 112 [2024-10-24 09:38:04,159 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-24 09:38:04,160 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-24 09:38:04,161 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-24 09:38:04,161 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-24 09:38:04,169 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,170 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,173 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,188 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]. [2024-10-24 09:38:04,191 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,192 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,201 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,204 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,208 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,209 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,215 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-24 09:38:04,216 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-24 09:38:04,216 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-24 09:38:04,216 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-24 09:38:04,217 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (1/1) ... [2024-10-24 09:38:04,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-24 09:38:04,230 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-24 09:38:04,242 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) [2024-10-24 09:38:04,246 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 [2024-10-24 09:38:04,281 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-24 09:38:04,281 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2024-10-24 09:38:04,281 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2024-10-24 09:38:04,281 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2024-10-24 09:38:04,282 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-24 09:38:04,283 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-24 09:38:04,352 INFO L238 CfgBuilder]: Building ICFG [2024-10-24 09:38:04,354 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-24 09:38:05,324 INFO L? ?]: Removed 10 outVars from TransFormulas that were not future-live. [2024-10-24 09:38:05,325 INFO L287 CfgBuilder]: Performing block encoding [2024-10-24 09:38:05,382 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-24 09:38:05,383 INFO L314 CfgBuilder]: Removed 1 assume(true) statements. [2024-10-24 09:38:05,384 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 24.10 09:38:05 BoogieIcfgContainer [2024-10-24 09:38:05,384 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-24 09:38:05,388 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-24 09:38:05,388 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-24 09:38:05,391 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-24 09:38:05,391 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 24.10 09:38:03" (1/3) ... [2024-10-24 09:38:05,392 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@75c35f08 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 24.10 09:38:05, skipping insertion in model container [2024-10-24 09:38:05,392 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 24.10 09:38:04" (2/3) ... [2024-10-24 09:38:05,393 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@75c35f08 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 24.10 09:38:05, skipping insertion in model container [2024-10-24 09:38:05,393 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 24.10 09:38:05" (3/3) ... [2024-10-24 09:38:05,395 INFO L112 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-45.i [2024-10-24 09:38:05,408 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-24 09:38:05,408 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-10-24 09:38:05,466 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-24 09:38:05,472 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;@721969de, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-24 09:38:05,472 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-10-24 09:38:05,476 INFO L276 IsEmpty]: Start isEmpty. Operand has 48 states, 26 states have (on average 1.3461538461538463) internal successors, (35), 27 states have internal predecessors, (35), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2024-10-24 09:38:05,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2024-10-24 09:38:05,487 INFO L207 NwaCegarLoop]: Found error trace [2024-10-24 09:38:05,488 INFO L215 NwaCegarLoop]: trace histogram [19, 19, 19, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-24 09:38:05,489 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-24 09:38:05,493 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-24 09:38:05,494 INFO L85 PathProgramCache]: Analyzing trace with hash -10547607, now seen corresponding path program 1 times [2024-10-24 09:38:05,507 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-10-24 09:38:05,508 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [190195331] [2024-10-24 09:38:05,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-24 09:38:05,509 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 [2024-10-24 09:38:05,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2024-10-24 09:38:05,511 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) [2024-10-24 09:38:05,513 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 [2024-10-24 09:38:05,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-24 09:38:05,815 INFO L255 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-10-24 09:38:05,825 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-24 09:38:52,099 WARN L286 SmtUtils]: Spent 13.79s on a formula simplification that was a NOOP. DAG size: 86 (called from [L 388] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)