/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/loops/eureka_01-1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 09:00:10,527 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 09:00:10,529 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 09:00:10,571 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 09:00:10,571 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 09:00:10,572 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 09:00:10,575 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 09:00:10,577 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 09:00:10,578 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 09:00:10,582 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 09:00:10,583 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 09:00:10,584 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 09:00:10,584 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 09:00:10,586 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 09:00:10,587 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 09:00:10,590 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 09:00:10,590 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 09:00:10,591 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 09:00:10,593 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 09:00:10,597 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 09:00:10,599 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 09:00:10,600 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 09:00:10,600 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 09:00:10,601 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 09:00:10,602 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 09:00:10,609 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 09:00:10,609 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 09:00:10,609 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 09:00:10,610 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 09:00:10,611 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 09:00:10,611 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 09:00:10,612 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 09:00:10,613 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 09:00:10,614 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 09:00:10,614 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 09:00:10,615 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 09:00:10,615 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 09:00:10,616 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 09:00:10,616 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 09:00:10,616 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 09:00:10,617 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 09:00:10,618 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 09:00:10,619 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-28 09:00:10,630 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 09:00:10,631 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 09:00:10,632 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 09:00:10,632 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 09:00:10,632 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 09:00:10,632 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 09:00:10,632 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 09:00:10,632 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 09:00:10,633 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 09:00:10,634 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 09:00:10,634 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 09:00:10,635 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 09:00:10,635 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 09:00:10,635 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 09:00:10,635 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 09:00:10,635 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 09:00:10,635 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-28 09:00:10,636 INFO L138 SettingsManager]: * Use separate solver for trace checks=false 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.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 09:00:10,861 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 09:00:10,888 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 09:00:10,890 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 09:00:10,891 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 09:00:10,893 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 09:00:10,894 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops/eureka_01-1.c [2022-04-28 09:00:10,957 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f1cdfb9eb/0a2547b7d2cd44d4af8053654ded769c/FLAGa8bc14e0a [2022-04-28 09:00:11,321 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 09:00:11,322 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/eureka_01-1.c [2022-04-28 09:00:11,327 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f1cdfb9eb/0a2547b7d2cd44d4af8053654ded769c/FLAGa8bc14e0a [2022-04-28 09:00:11,337 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f1cdfb9eb/0a2547b7d2cd44d4af8053654ded769c [2022-04-28 09:00:11,339 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 09:00:11,340 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 09:00:11,341 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 09:00:11,341 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 09:00:11,349 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 09:00:11,350 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,351 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@525a3dc6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11, skipping insertion in model container [2022-04-28 09:00:11,351 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,358 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 09:00:11,384 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 09:00:11,511 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops/eureka_01-1.c[446,459] [2022-04-28 09:00:11,543 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 09:00:11,548 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 09:00:11,563 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops/eureka_01-1.c[446,459] [2022-04-28 09:00:11,584 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 09:00:11,595 INFO L208 MainTranslator]: Completed translation [2022-04-28 09:00:11,596 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11 WrapperNode [2022-04-28 09:00:11,596 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 09:00:11,597 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 09:00:11,597 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 09:00:11,597 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 09:00:11,605 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,606 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,613 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,613 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,636 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,644 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,646 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,648 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 09:00:11,649 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 09:00:11,650 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 09:00:11,650 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 09:00:11,650 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (1/1) ... [2022-04-28 09:00:11,662 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 09:00:11,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:11,684 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 09:00:11,703 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 09:00:11,720 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 09:00:11,721 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 09:00:11,721 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 09:00:11,721 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 09:00:11,721 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 09:00:11,721 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 09:00:11,721 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 09:00:11,721 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 09:00:11,722 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 09:00:11,722 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 09:00:11,722 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 09:00:11,723 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 09:00:11,723 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 09:00:11,723 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 09:00:11,724 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-28 09:00:11,726 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 09:00:11,726 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 09:00:11,726 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 09:00:11,726 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 09:00:11,727 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 09:00:11,727 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 09:00:11,781 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 09:00:11,782 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 09:00:12,139 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 09:00:12,146 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 09:00:12,146 INFO L299 CfgBuilder]: Removed 5 assume(true) statements. [2022-04-28 09:00:12,148 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 09:00:12 BoogieIcfgContainer [2022-04-28 09:00:12,148 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 09:00:12,149 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 09:00:12,149 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 09:00:12,152 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 09:00:12,153 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 09:00:11" (1/3) ... [2022-04-28 09:00:12,153 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42aba6c5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 09:00:12, skipping insertion in model container [2022-04-28 09:00:12,153 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 09:00:11" (2/3) ... [2022-04-28 09:00:12,153 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42aba6c5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 09:00:12, skipping insertion in model container [2022-04-28 09:00:12,154 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 09:00:12" (3/3) ... [2022-04-28 09:00:12,155 INFO L111 eAbstractionObserver]: Analyzing ICFG eureka_01-1.c [2022-04-28 09:00:12,169 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 09:00:12,169 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 09:00:12,205 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 09:00:12,211 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@3c94ac3a, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6994db0 [2022-04-28 09:00:12,211 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 09:00:12,219 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 29 states have (on average 1.5862068965517242) internal successors, (46), 30 states have internal predecessors, (46), 3 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:12,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-28 09:00:12,231 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:12,232 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:12,232 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:12,236 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:12,236 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 1 times [2022-04-28 09:00:12,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:12,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1181480921] [2022-04-28 09:00:12,250 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 09:00:12,250 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 2 times [2022-04-28 09:00:12,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:12,253 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589369496] [2022-04-28 09:00:12,253 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:12,254 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:12,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:12,453 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:12,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:12,485 INFO L290 TraceCheckUtils]: 0: Hoare triple {45#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {40#true} is VALID [2022-04-28 09:00:12,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 09:00:12,486 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-28 09:00:12,488 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {45#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:12,488 INFO L290 TraceCheckUtils]: 1: Hoare triple {45#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {40#true} is VALID [2022-04-28 09:00:12,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 09:00:12,488 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-28 09:00:12,489 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret22 := main(); {40#true} is VALID [2022-04-28 09:00:12,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {40#true} is VALID [2022-04-28 09:00:12,490 INFO L290 TraceCheckUtils]: 6: Hoare triple {40#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {40#true} is VALID [2022-04-28 09:00:12,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {40#true} is VALID [2022-04-28 09:00:12,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume !true; {41#false} is VALID [2022-04-28 09:00:12,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-28 09:00:12,497 INFO L290 TraceCheckUtils]: 10: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-28 09:00:12,497 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-28 09:00:12,498 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-28 09:00:12,498 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-28 09:00:12,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {41#false} is VALID [2022-04-28 09:00:12,499 INFO L272 TraceCheckUtils]: 15: Hoare triple {41#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {41#false} is VALID [2022-04-28 09:00:12,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-28 09:00:12,499 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-28 09:00:12,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-28 09:00:12,500 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:12,501 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:12,501 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589369496] [2022-04-28 09:00:12,501 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [589369496] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:12,502 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:12,502 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 09:00:12,504 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:12,504 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1181480921] [2022-04-28 09:00:12,505 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1181480921] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:12,505 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:12,505 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 09:00:12,505 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1765504855] [2022-04-28 09:00:12,506 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:12,510 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-28 09:00:12,512 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:12,515 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:12,548 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:12,549 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 09:00:12,549 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:12,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 09:00:12,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 09:00:12,575 INFO L87 Difference]: Start difference. First operand has 37 states, 29 states have (on average 1.5862068965517242) internal successors, (46), 30 states have internal predecessors, (46), 3 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:12,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:12,724 INFO L93 Difference]: Finished difference Result 63 states and 89 transitions. [2022-04-28 09:00:12,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 09:00:12,724 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-28 09:00:12,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:12,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:12,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-28 09:00:12,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:12,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-28 09:00:12,748 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 89 transitions. [2022-04-28 09:00:12,847 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:12,856 INFO L225 Difference]: With dead ends: 63 [2022-04-28 09:00:12,856 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 09:00:12,859 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 09:00:12,864 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 37 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 6 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:12,866 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [38 Valid, 47 Invalid, 6 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 09:00:12,880 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 09:00:12,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 09:00:12,897 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:12,898 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:12,898 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:12,899 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:12,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:12,901 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-28 09:00:12,901 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-28 09:00:12,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:12,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:12,902 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 32 states. [2022-04-28 09:00:12,903 INFO L87 Difference]: Start difference. First operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 32 states. [2022-04-28 09:00:12,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:12,905 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-28 09:00:12,905 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-28 09:00:12,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:12,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:12,906 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:12,906 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:12,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 26 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:12,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 38 transitions. [2022-04-28 09:00:12,909 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 38 transitions. Word has length 19 [2022-04-28 09:00:12,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:12,909 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 38 transitions. [2022-04-28 09:00:12,910 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:12,910 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 38 transitions. [2022-04-28 09:00:12,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:12,953 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-28 09:00:12,954 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-28 09:00:12,954 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:12,954 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:12,954 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 09:00:12,955 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:12,955 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:12,955 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 1 times [2022-04-28 09:00:12,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:12,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1538848284] [2022-04-28 09:00:12,956 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 09:00:12,956 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 2 times [2022-04-28 09:00:12,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:12,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [764318826] [2022-04-28 09:00:12,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:12,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:13,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:13,114 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:13,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:13,127 INFO L290 TraceCheckUtils]: 0: Hoare triple {310#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {302#true} is VALID [2022-04-28 09:00:13,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-28 09:00:13,128 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-28 09:00:13,128 INFO L272 TraceCheckUtils]: 0: Hoare triple {302#true} call ULTIMATE.init(); {310#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:13,129 INFO L290 TraceCheckUtils]: 1: Hoare triple {310#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {302#true} is VALID [2022-04-28 09:00:13,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-28 09:00:13,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-28 09:00:13,129 INFO L272 TraceCheckUtils]: 4: Hoare triple {302#true} call #t~ret22 := main(); {302#true} is VALID [2022-04-28 09:00:13,129 INFO L290 TraceCheckUtils]: 5: Hoare triple {302#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {302#true} is VALID [2022-04-28 09:00:13,130 INFO L290 TraceCheckUtils]: 6: Hoare triple {302#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {302#true} is VALID [2022-04-28 09:00:13,130 INFO L290 TraceCheckUtils]: 7: Hoare triple {302#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {307#(= main_~i~0 0)} is VALID [2022-04-28 09:00:13,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {307#(= main_~i~0 0)} assume !(~i~0 < ~nodecount~0); {308#(<= main_~nodecount~0 0)} is VALID [2022-04-28 09:00:13,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-28 09:00:13,132 INFO L290 TraceCheckUtils]: 10: Hoare triple {308#(<= main_~nodecount~0 0)} assume !(~i~0 < ~nodecount~0); {308#(<= main_~nodecount~0 0)} is VALID [2022-04-28 09:00:13,133 INFO L290 TraceCheckUtils]: 11: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-28 09:00:13,133 INFO L290 TraceCheckUtils]: 12: Hoare triple {308#(<= main_~nodecount~0 0)} assume !(~i~0 < ~edgecount~0); {308#(<= main_~nodecount~0 0)} is VALID [2022-04-28 09:00:13,134 INFO L290 TraceCheckUtils]: 13: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {309#(and (<= main_~nodecount~0 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:13,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {309#(and (<= main_~nodecount~0 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {303#false} is VALID [2022-04-28 09:00:13,137 INFO L272 TraceCheckUtils]: 15: Hoare triple {303#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {303#false} is VALID [2022-04-28 09:00:13,137 INFO L290 TraceCheckUtils]: 16: Hoare triple {303#false} ~cond := #in~cond; {303#false} is VALID [2022-04-28 09:00:13,137 INFO L290 TraceCheckUtils]: 17: Hoare triple {303#false} assume 0 == ~cond; {303#false} is VALID [2022-04-28 09:00:13,137 INFO L290 TraceCheckUtils]: 18: Hoare triple {303#false} assume !false; {303#false} is VALID [2022-04-28 09:00:13,138 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:13,138 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:13,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [764318826] [2022-04-28 09:00:13,139 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [764318826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:13,140 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:13,140 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 09:00:13,140 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:13,141 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1538848284] [2022-04-28 09:00:13,141 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1538848284] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:13,141 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:13,142 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 09:00:13,142 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2079481939] [2022-04-28 09:00:13,142 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:13,143 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-28 09:00:13,143 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:13,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:13,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:13,164 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 09:00:13,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:13,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 09:00:13,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 09:00:13,165 INFO L87 Difference]: Start difference. First operand 32 states and 38 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:13,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:13,502 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-28 09:00:13,502 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 09:00:13,504 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-28 09:00:13,504 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:13,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:13,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-28 09:00:13,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:13,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-28 09:00:13,517 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 100 transitions. [2022-04-28 09:00:13,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:13,623 INFO L225 Difference]: With dead ends: 80 [2022-04-28 09:00:13,623 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 09:00:13,624 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-28 09:00:13,627 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 85 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 106 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:13,627 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 36 Invalid, 106 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 09:00:13,629 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 09:00:13,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 34. [2022-04-28 09:00:13,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:13,636 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:13,636 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:13,636 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:13,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:13,643 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-28 09:00:13,643 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-28 09:00:13,645 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:13,645 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:13,645 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 48 states. [2022-04-28 09:00:13,646 INFO L87 Difference]: Start difference. First operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 48 states. [2022-04-28 09:00:13,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:13,650 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-28 09:00:13,650 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-28 09:00:13,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:13,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:13,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:13,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:13,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:13,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 09:00:13,659 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 19 [2022-04-28 09:00:13,659 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:13,659 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 09:00:13,659 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:13,660 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-28 09:00:13,717 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:13,718 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 09:00:13,722 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 09:00:13,722 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:13,722 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:13,722 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-28 09:00:13,725 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:13,726 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:13,726 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 1 times [2022-04-28 09:00:13,726 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:13,726 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1067539758] [2022-04-28 09:00:13,736 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:13,736 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:13,736 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 2 times [2022-04-28 09:00:13,737 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:13,737 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [603564404] [2022-04-28 09:00:13,737 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:13,737 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:13,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:13,911 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:13,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:13,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {643#true} is VALID [2022-04-28 09:00:13,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-28 09:00:13,917 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-28 09:00:13,918 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:13,918 INFO L290 TraceCheckUtils]: 1: Hoare triple {654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {643#true} is VALID [2022-04-28 09:00:13,918 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-28 09:00:13,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-28 09:00:13,919 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-28 09:00:13,919 INFO L290 TraceCheckUtils]: 5: Hoare triple {643#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {643#true} is VALID [2022-04-28 09:00:13,919 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-28 09:00:13,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {643#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:13,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:13,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {649#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:13,923 INFO L290 TraceCheckUtils]: 10: Hoare triple {649#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,924 INFO L290 TraceCheckUtils]: 11: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,925 INFO L290 TraceCheckUtils]: 12: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,925 INFO L290 TraceCheckUtils]: 13: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,926 INFO L290 TraceCheckUtils]: 14: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,926 INFO L290 TraceCheckUtils]: 15: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,927 INFO L290 TraceCheckUtils]: 16: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,927 INFO L290 TraceCheckUtils]: 17: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:13,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {650#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {649#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:13,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {649#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {651#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:00:13,929 INFO L272 TraceCheckUtils]: 21: Hoare triple {651#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {652#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:00:13,930 INFO L290 TraceCheckUtils]: 22: Hoare triple {652#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {653#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:00:13,930 INFO L290 TraceCheckUtils]: 23: Hoare triple {653#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {644#false} is VALID [2022-04-28 09:00:13,931 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-28 09:00:13,931 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:13,931 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:13,931 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [603564404] [2022-04-28 09:00:13,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [603564404] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:13,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [670489249] [2022-04-28 09:00:13,932 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:13,932 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:13,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:13,939 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) [2022-04-28 09:00:13,943 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 09:00:14,041 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:14,042 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:14,044 INFO L263 TraceCheckSpWp]: Trace formula consists of 275 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 09:00:14,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:14,085 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:14,259 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-04-28 09:00:14,435 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-04-28 09:00:14,499 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-28 09:00:14,499 INFO L290 TraceCheckUtils]: 1: Hoare triple {643#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {643#true} is VALID [2022-04-28 09:00:14,500 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-28 09:00:14,500 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-28 09:00:14,500 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-28 09:00:14,500 INFO L290 TraceCheckUtils]: 5: Hoare triple {643#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {643#true} is VALID [2022-04-28 09:00:14,500 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-28 09:00:14,503 INFO L290 TraceCheckUtils]: 7: Hoare triple {643#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:14,503 INFO L290 TraceCheckUtils]: 8: Hoare triple {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:14,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {648#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,505 INFO L290 TraceCheckUtils]: 10: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,505 INFO L290 TraceCheckUtils]: 11: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,506 INFO L290 TraceCheckUtils]: 13: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,507 INFO L290 TraceCheckUtils]: 14: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,507 INFO L290 TraceCheckUtils]: 15: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,508 INFO L290 TraceCheckUtils]: 16: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,508 INFO L290 TraceCheckUtils]: 17: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~edgecount~0); {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {685#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {716#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:14,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {716#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {720#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:14,510 INFO L272 TraceCheckUtils]: 21: Hoare triple {720#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:14,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:14,511 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-28 09:00:14,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-28 09:00:14,512 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:14,512 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:14,712 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2022-04-28 09:00:14,725 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 24 [2022-04-28 09:00:14,773 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-28 09:00:14,773 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-28 09:00:14,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:14,774 INFO L272 TraceCheckUtils]: 21: Hoare triple {720#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:14,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {747#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {720#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:14,775 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {747#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:00:14,777 INFO L290 TraceCheckUtils]: 18: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~edgecount~0); {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,778 INFO L290 TraceCheckUtils]: 17: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,778 INFO L290 TraceCheckUtils]: 16: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~nodecount~0); {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,779 INFO L290 TraceCheckUtils]: 15: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~j~0 < ~edgecount~0); {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,780 INFO L290 TraceCheckUtils]: 13: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,780 INFO L290 TraceCheckUtils]: 12: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,781 INFO L290 TraceCheckUtils]: 11: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~nodecount~0); {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,782 INFO L290 TraceCheckUtils]: 10: Hoare triple {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,783 INFO L290 TraceCheckUtils]: 9: Hoare triple {782#(= 0 (* main_~i~0 4))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {751#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:14,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {782#(= 0 (* main_~i~0 4))} assume !!(~i~0 < ~nodecount~0); {782#(= 0 (* main_~i~0 4))} is VALID [2022-04-28 09:00:14,786 INFO L290 TraceCheckUtils]: 7: Hoare triple {643#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {782#(= 0 (* main_~i~0 4))} is VALID [2022-04-28 09:00:14,786 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-28 09:00:14,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {643#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {643#true} is VALID [2022-04-28 09:00:14,796 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-28 09:00:14,796 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-28 09:00:14,797 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-28 09:00:14,797 INFO L290 TraceCheckUtils]: 1: Hoare triple {643#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {643#true} is VALID [2022-04-28 09:00:14,797 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-28 09:00:14,797 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:14,797 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [670489249] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:14,798 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:14,798 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 17 [2022-04-28 09:00:14,798 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:14,798 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1067539758] [2022-04-28 09:00:14,798 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1067539758] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:14,799 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:14,799 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 09:00:14,799 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1577070781] [2022-04-28 09:00:14,799 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:14,799 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-28 09:00:14,800 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:14,800 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:14,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:14,822 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 09:00:14,822 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:14,823 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 09:00:14,824 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=222, Unknown=0, NotChecked=0, Total=272 [2022-04-28 09:00:14,824 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:15,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:15,470 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-04-28 09:00:15,470 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 09:00:15,471 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-28 09:00:15,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:15,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:15,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 09:00:15,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:15,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 09:00:15,475 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-28 09:00:15,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:15,563 INFO L225 Difference]: With dead ends: 78 [2022-04-28 09:00:15,563 INFO L226 Difference]: Without dead ends: 76 [2022-04-28 09:00:15,564 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 44 SyntacticMatches, 1 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 93 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=105, Invalid=447, Unknown=0, NotChecked=0, Total=552 [2022-04-28 09:00:15,565 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 90 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 270 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 296 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 270 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:15,565 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [91 Valid, 54 Invalid, 296 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 270 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 09:00:15,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-28 09:00:15,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 55. [2022-04-28 09:00:15,575 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:15,575 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:15,576 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:15,576 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:15,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:15,579 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-28 09:00:15,579 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-28 09:00:15,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:15,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:15,579 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 76 states. [2022-04-28 09:00:15,580 INFO L87 Difference]: Start difference. First operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 76 states. [2022-04-28 09:00:15,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:15,582 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-28 09:00:15,582 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-28 09:00:15,583 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:15,583 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:15,583 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:15,583 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:15,583 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 47 states have (on average 1.2765957446808511) internal successors, (60), 48 states have internal predecessors, (60), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:15,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 67 transitions. [2022-04-28 09:00:15,585 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 67 transitions. Word has length 25 [2022-04-28 09:00:15,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:15,585 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 67 transitions. [2022-04-28 09:00:15,586 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:15,586 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 67 transitions. [2022-04-28 09:00:15,654 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:15,654 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 67 transitions. [2022-04-28 09:00:15,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 09:00:15,655 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:15,655 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:15,680 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:15,878 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:15,879 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:15,879 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:15,879 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 1 times [2022-04-28 09:00:15,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:15,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2023134241] [2022-04-28 09:00:15,883 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:15,883 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:15,883 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 2 times [2022-04-28 09:00:15,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:15,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [525838613] [2022-04-28 09:00:15,883 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:15,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:15,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:15,959 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:15,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:15,968 INFO L290 TraceCheckUtils]: 0: Hoare triple {1250#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1244#true} is VALID [2022-04-28 09:00:15,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-28 09:00:15,969 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-28 09:00:15,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {1244#true} call ULTIMATE.init(); {1250#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:15,970 INFO L290 TraceCheckUtils]: 1: Hoare triple {1250#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1244#true} is VALID [2022-04-28 09:00:15,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-28 09:00:15,970 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-28 09:00:15,970 INFO L272 TraceCheckUtils]: 4: Hoare triple {1244#true} call #t~ret22 := main(); {1244#true} is VALID [2022-04-28 09:00:15,970 INFO L290 TraceCheckUtils]: 5: Hoare triple {1244#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {1244#true} is VALID [2022-04-28 09:00:15,971 INFO L290 TraceCheckUtils]: 6: Hoare triple {1244#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1244#true} is VALID [2022-04-28 09:00:15,973 INFO L290 TraceCheckUtils]: 7: Hoare triple {1244#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {1249#(= main_~source~0 main_~i~0)} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {1249#(= main_~source~0 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {1249#(= main_~source~0 main_~i~0)} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {1249#(= main_~source~0 main_~i~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1245#false} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 10: Hoare triple {1245#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1245#false} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 11: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-28 09:00:15,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {1245#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {1245#false} assume !(~j~0 < ~edgecount~0); {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 15: Hoare triple {1245#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 16: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 17: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 18: Hoare triple {1245#false} assume !(~i~0 < ~edgecount~0); {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 19: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L290 TraceCheckUtils]: 20: Hoare triple {1245#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1245#false} is VALID [2022-04-28 09:00:15,975 INFO L272 TraceCheckUtils]: 21: Hoare triple {1245#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {1245#false} is VALID [2022-04-28 09:00:15,976 INFO L290 TraceCheckUtils]: 22: Hoare triple {1245#false} ~cond := #in~cond; {1245#false} is VALID [2022-04-28 09:00:15,976 INFO L290 TraceCheckUtils]: 23: Hoare triple {1245#false} assume 0 == ~cond; {1245#false} is VALID [2022-04-28 09:00:15,976 INFO L290 TraceCheckUtils]: 24: Hoare triple {1245#false} assume !false; {1245#false} is VALID [2022-04-28 09:00:15,976 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:15,976 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:15,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [525838613] [2022-04-28 09:00:15,976 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [525838613] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:15,977 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:15,977 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 09:00:15,977 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:15,977 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2023134241] [2022-04-28 09:00:15,977 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2023134241] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:15,977 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:15,977 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 09:00:15,977 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1193903930] [2022-04-28 09:00:15,977 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:15,978 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-28 09:00:15,978 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:15,978 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:15,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:15,999 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 09:00:15,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:16,000 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 09:00:16,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 09:00:16,001 INFO L87 Difference]: Start difference. First operand 55 states and 67 transitions. Second operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:16,126 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:16,126 INFO L93 Difference]: Finished difference Result 82 states and 101 transitions. [2022-04-28 09:00:16,126 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 09:00:16,126 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-28 09:00:16,126 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:16,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:16,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-28 09:00:16,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:16,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-28 09:00:16,134 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 72 transitions. [2022-04-28 09:00:16,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:16,203 INFO L225 Difference]: With dead ends: 82 [2022-04-28 09:00:16,203 INFO L226 Difference]: Without dead ends: 57 [2022-04-28 09:00:16,204 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-28 09:00:16,205 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 34 mSDsluCounter, 7 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:16,206 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 40 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 09:00:16,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-28 09:00:16,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 56. [2022-04-28 09:00:16,227 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:16,229 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:16,229 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:16,230 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:16,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:16,231 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-28 09:00:16,231 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-28 09:00:16,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:16,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:16,232 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 57 states. [2022-04-28 09:00:16,232 INFO L87 Difference]: Start difference. First operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 57 states. [2022-04-28 09:00:16,234 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:16,234 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-28 09:00:16,234 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-28 09:00:16,234 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:16,234 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:16,234 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:16,235 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:16,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 48 states have (on average 1.2708333333333333) internal successors, (61), 49 states have internal predecessors, (61), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:16,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 68 transitions. [2022-04-28 09:00:16,237 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 68 transitions. Word has length 25 [2022-04-28 09:00:16,237 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:16,237 INFO L495 AbstractCegarLoop]: Abstraction has 56 states and 68 transitions. [2022-04-28 09:00:16,237 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.25) internal successors, (21), 3 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:16,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 68 transitions. [2022-04-28 09:00:16,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:16,318 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 68 transitions. [2022-04-28 09:00:16,318 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 09:00:16,318 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:16,319 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:16,319 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-28 09:00:16,319 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:16,319 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:16,319 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 1 times [2022-04-28 09:00:16,319 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:16,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1856656676] [2022-04-28 09:00:16,323 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:16,323 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:16,323 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 2 times [2022-04-28 09:00:16,323 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:16,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1902229659] [2022-04-28 09:00:16,324 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:16,324 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:16,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:16,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:16,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:16,479 INFO L290 TraceCheckUtils]: 0: Hoare triple {1654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1645#true} is VALID [2022-04-28 09:00:16,479 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-28 09:00:16,480 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-28 09:00:16,480 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {1654#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,481 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {1645#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1645#true} is VALID [2022-04-28 09:00:16,482 INFO L290 TraceCheckUtils]: 10: Hoare triple {1645#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1645#true} is VALID [2022-04-28 09:00:16,482 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,482 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,482 INFO L290 TraceCheckUtils]: 13: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1650#(= main_~j~0 0)} is VALID [2022-04-28 09:00:16,483 INFO L290 TraceCheckUtils]: 14: Hoare triple {1650#(= main_~j~0 0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {1651#(and (= main_~j~0 0) (<= (+ main_~j~0 1) main_~edgecount~0))} is VALID [2022-04-28 09:00:16,485 INFO L290 TraceCheckUtils]: 15: Hoare triple {1651#(and (= main_~j~0 0) (<= (+ main_~j~0 1) main_~edgecount~0))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {1651#(and (= main_~j~0 0) (<= (+ main_~j~0 1) main_~edgecount~0))} is VALID [2022-04-28 09:00:16,485 INFO L290 TraceCheckUtils]: 16: Hoare triple {1651#(and (= main_~j~0 0) (<= (+ main_~j~0 1) main_~edgecount~0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,486 INFO L290 TraceCheckUtils]: 17: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,486 INFO L290 TraceCheckUtils]: 18: Hoare triple {1652#(<= 1 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,486 INFO L290 TraceCheckUtils]: 19: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {1652#(<= 1 main_~edgecount~0)} ~i~0 := 0; {1653#(and (<= 1 main_~edgecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:16,487 INFO L290 TraceCheckUtils]: 21: Hoare triple {1653#(and (<= 1 main_~edgecount~0) (= main_~i~0 0))} assume !(~i~0 < ~edgecount~0); {1646#false} is VALID [2022-04-28 09:00:16,487 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-28 09:00:16,487 INFO L290 TraceCheckUtils]: 23: Hoare triple {1646#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1646#false} is VALID [2022-04-28 09:00:16,487 INFO L272 TraceCheckUtils]: 24: Hoare triple {1646#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {1646#false} is VALID [2022-04-28 09:00:16,488 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-28 09:00:16,488 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-28 09:00:16,488 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-28 09:00:16,488 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:16,488 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:16,488 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1902229659] [2022-04-28 09:00:16,488 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1902229659] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:16,488 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [160962828] [2022-04-28 09:00:16,489 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:16,489 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:16,489 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:16,490 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) [2022-04-28 09:00:16,491 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 09:00:16,579 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:16,580 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:16,581 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 09:00:16,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:16,590 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:16,726 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-28 09:00:16,727 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1645#true} is VALID [2022-04-28 09:00:16,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-28 09:00:16,727 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-28 09:00:16,727 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {1645#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 10: Hoare triple {1645#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,728 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1697#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:16,730 INFO L290 TraceCheckUtils]: 14: Hoare triple {1697#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,730 INFO L290 TraceCheckUtils]: 15: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,730 INFO L290 TraceCheckUtils]: 16: Hoare triple {1652#(<= 1 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,731 INFO L290 TraceCheckUtils]: 17: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,732 INFO L290 TraceCheckUtils]: 18: Hoare triple {1652#(<= 1 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,732 INFO L290 TraceCheckUtils]: 19: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,733 INFO L290 TraceCheckUtils]: 20: Hoare triple {1652#(<= 1 main_~edgecount~0)} ~i~0 := 0; {1719#(and (<= 1 main_~edgecount~0) (<= main_~i~0 0))} is VALID [2022-04-28 09:00:16,733 INFO L290 TraceCheckUtils]: 21: Hoare triple {1719#(and (<= 1 main_~edgecount~0) (<= main_~i~0 0))} assume !(~i~0 < ~edgecount~0); {1646#false} is VALID [2022-04-28 09:00:16,733 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-28 09:00:16,733 INFO L290 TraceCheckUtils]: 23: Hoare triple {1646#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1646#false} is VALID [2022-04-28 09:00:16,735 INFO L272 TraceCheckUtils]: 24: Hoare triple {1646#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {1646#false} is VALID [2022-04-28 09:00:16,735 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-28 09:00:16,735 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-28 09:00:16,735 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-28 09:00:16,735 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:16,735 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:16,836 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-28 09:00:16,836 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-28 09:00:16,836 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-28 09:00:16,836 INFO L272 TraceCheckUtils]: 24: Hoare triple {1646#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {1646#false} is VALID [2022-04-28 09:00:16,837 INFO L290 TraceCheckUtils]: 23: Hoare triple {1646#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1646#false} is VALID [2022-04-28 09:00:16,837 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-28 09:00:16,838 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#(< main_~i~0 main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {1646#false} is VALID [2022-04-28 09:00:16,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {1652#(<= 1 main_~edgecount~0)} ~i~0 := 0; {1759#(< main_~i~0 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,839 INFO L290 TraceCheckUtils]: 18: Hoare triple {1652#(<= 1 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,839 INFO L290 TraceCheckUtils]: 17: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,839 INFO L290 TraceCheckUtils]: 16: Hoare triple {1652#(<= 1 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,840 INFO L290 TraceCheckUtils]: 15: Hoare triple {1652#(<= 1 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {1697#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {1652#(<= 1 main_~edgecount~0)} is VALID [2022-04-28 09:00:16,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1697#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:16,842 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 10: Hoare triple {1645#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 9: Hoare triple {1645#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {1645#true} is VALID [2022-04-28 09:00:16,843 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-28 09:00:16,844 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:16,844 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [160962828] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:16,844 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:16,844 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 5, 5] total 10 [2022-04-28 09:00:16,844 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:16,844 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1856656676] [2022-04-28 09:00:16,844 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1856656676] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:16,845 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:16,845 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 09:00:16,845 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [812613474] [2022-04-28 09:00:16,845 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:16,845 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-28 09:00:16,845 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:16,846 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:16,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:16,871 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 09:00:16,871 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:16,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 09:00:16,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-28 09:00:16,872 INFO L87 Difference]: Start difference. First operand 56 states and 68 transitions. Second operand has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:17,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:17,253 INFO L93 Difference]: Finished difference Result 130 states and 165 transitions. [2022-04-28 09:00:17,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 09:00:17,254 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-28 09:00:17,254 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:17,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:17,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-28 09:00:17,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:17,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-28 09:00:17,257 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 93 transitions. [2022-04-28 09:00:17,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:17,348 INFO L225 Difference]: With dead ends: 130 [2022-04-28 09:00:17,348 INFO L226 Difference]: Without dead ends: 94 [2022-04-28 09:00:17,349 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 53 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2022-04-28 09:00:17,349 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 89 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 117 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 117 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:17,351 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [89 Valid, 54 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 117 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 09:00:17,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-28 09:00:17,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 68. [2022-04-28 09:00:17,388 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:17,388 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:17,389 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:17,389 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:17,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:17,395 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-28 09:00:17,395 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-28 09:00:17,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:17,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:17,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 94 states. [2022-04-28 09:00:17,396 INFO L87 Difference]: Start difference. First operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 94 states. [2022-04-28 09:00:17,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:17,400 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-28 09:00:17,400 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-28 09:00:17,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:17,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:17,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:17,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:17,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 61 states have internal predecessors, (77), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:17,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 84 transitions. [2022-04-28 09:00:17,403 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 84 transitions. Word has length 28 [2022-04-28 09:00:17,404 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:17,404 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 84 transitions. [2022-04-28 09:00:17,404 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:17,404 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 84 transitions. [2022-04-28 09:00:17,507 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:17,508 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 84 transitions. [2022-04-28 09:00:17,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 09:00:17,508 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:17,509 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:17,529 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:17,727 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:17,727 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:17,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:17,728 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 1 times [2022-04-28 09:00:17,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:17,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1093493967] [2022-04-28 09:00:17,733 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:17,733 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:17,733 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 2 times [2022-04-28 09:00:17,733 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:17,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [947340501] [2022-04-28 09:00:17,734 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:17,734 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:17,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:17,808 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:17,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:17,812 INFO L290 TraceCheckUtils]: 0: Hoare triple {2427#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {2417#true} is VALID [2022-04-28 09:00:17,812 INFO L290 TraceCheckUtils]: 1: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-28 09:00:17,812 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-28 09:00:17,813 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2427#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:17,813 INFO L290 TraceCheckUtils]: 1: Hoare triple {2427#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {2417#true} is VALID [2022-04-28 09:00:17,813 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-28 09:00:17,814 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-28 09:00:17,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-28 09:00:17,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {2417#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {2417#true} is VALID [2022-04-28 09:00:17,814 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-28 09:00:17,814 INFO L290 TraceCheckUtils]: 7: Hoare triple {2417#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {2422#(= main_~i~0 0)} is VALID [2022-04-28 09:00:17,815 INFO L290 TraceCheckUtils]: 8: Hoare triple {2422#(= main_~i~0 0)} assume !!(~i~0 < ~nodecount~0); {2422#(= main_~i~0 0)} is VALID [2022-04-28 09:00:17,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {2422#(= main_~i~0 0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2422#(= main_~i~0 0)} is VALID [2022-04-28 09:00:17,815 INFO L290 TraceCheckUtils]: 10: Hoare triple {2422#(= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2423#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:17,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {2423#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:17,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:17,817 INFO L290 TraceCheckUtils]: 13: Hoare triple {2424#(<= 2 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:17,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:17,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {2424#(<= 2 main_~nodecount~0)} ~i~0 := 0; {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:17,818 INFO L290 TraceCheckUtils]: 16: Hoare triple {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:17,818 INFO L290 TraceCheckUtils]: 17: Hoare triple {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} assume !(~j~0 < ~edgecount~0); {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:17,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {2425#(and (<= 2 main_~nodecount~0) (= main_~i~0 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2426#(<= (+ main_~i~0 1) main_~nodecount~0)} is VALID [2022-04-28 09:00:17,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {2426#(<= (+ main_~i~0 1) main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {2418#false} is VALID [2022-04-28 09:00:17,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:17,819 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L290 TraceCheckUtils]: 23: Hoare triple {2418#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L272 TraceCheckUtils]: 24: Hoare triple {2418#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-28 09:00:17,820 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:17,820 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:17,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [947340501] [2022-04-28 09:00:17,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [947340501] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:17,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [170713594] [2022-04-28 09:00:17,821 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:17,821 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:17,821 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:17,824 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:17,850 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 09:00:17,917 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:17,918 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:17,919 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-28 09:00:17,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:17,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:18,140 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {2417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {2417#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {2417#true} is VALID [2022-04-28 09:00:18,141 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-28 09:00:18,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {2417#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {2452#(<= 0 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {2452#(<= 0 main_~i~0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,145 INFO L290 TraceCheckUtils]: 10: Hoare triple {2452#(<= 0 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2423#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:18,146 INFO L290 TraceCheckUtils]: 11: Hoare triple {2423#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {2424#(<= 2 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,148 INFO L290 TraceCheckUtils]: 15: Hoare triple {2424#(<= 2 main_~nodecount~0)} ~i~0 := 0; {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} is VALID [2022-04-28 09:00:18,149 INFO L290 TraceCheckUtils]: 16: Hoare triple {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} is VALID [2022-04-28 09:00:18,150 INFO L290 TraceCheckUtils]: 17: Hoare triple {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} assume !(~j~0 < ~edgecount~0); {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} is VALID [2022-04-28 09:00:18,151 INFO L290 TraceCheckUtils]: 18: Hoare triple {2477#(and (<= main_~i~0 0) (<= 2 main_~nodecount~0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2487#(and (<= main_~i~0 1) (<= 2 main_~nodecount~0))} is VALID [2022-04-28 09:00:18,151 INFO L290 TraceCheckUtils]: 19: Hoare triple {2487#(and (<= main_~i~0 1) (<= 2 main_~nodecount~0))} assume !(~i~0 < ~nodecount~0); {2418#false} is VALID [2022-04-28 09:00:18,151 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {2418#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L272 TraceCheckUtils]: 24: Hoare triple {2418#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-28 09:00:18,152 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-28 09:00:18,153 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-28 09:00:18,154 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:18,155 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:18,294 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-28 09:00:18,295 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-28 09:00:18,295 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-28 09:00:18,295 INFO L272 TraceCheckUtils]: 24: Hoare triple {2418#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {2418#false} is VALID [2022-04-28 09:00:18,296 INFO L290 TraceCheckUtils]: 23: Hoare triple {2418#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2418#false} is VALID [2022-04-28 09:00:18,296 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:18,296 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-28 09:00:18,296 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-28 09:00:18,297 INFO L290 TraceCheckUtils]: 19: Hoare triple {2426#(<= (+ main_~i~0 1) main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {2418#false} is VALID [2022-04-28 09:00:18,297 INFO L290 TraceCheckUtils]: 18: Hoare triple {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2426#(<= (+ main_~i~0 1) main_~nodecount~0)} is VALID [2022-04-28 09:00:18,298 INFO L290 TraceCheckUtils]: 17: Hoare triple {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !(~j~0 < ~edgecount~0); {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:18,298 INFO L290 TraceCheckUtils]: 16: Hoare triple {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:18,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {2424#(<= 2 main_~nodecount~0)} ~i~0 := 0; {2542#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:18,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {2424#(<= 2 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,300 INFO L290 TraceCheckUtils]: 12: Hoare triple {2424#(<= 2 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,300 INFO L290 TraceCheckUtils]: 11: Hoare triple {2423#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {2424#(<= 2 main_~nodecount~0)} is VALID [2022-04-28 09:00:18,301 INFO L290 TraceCheckUtils]: 10: Hoare triple {2452#(<= 0 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2423#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:18,301 INFO L290 TraceCheckUtils]: 9: Hoare triple {2452#(<= 0 main_~i~0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,302 INFO L290 TraceCheckUtils]: 8: Hoare triple {2452#(<= 0 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {2417#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {2452#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:18,304 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-28 09:00:18,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {2417#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {2417#true} is VALID [2022-04-28 09:00:18,304 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-28 09:00:18,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-28 09:00:18,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-28 09:00:18,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {2417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {2417#true} is VALID [2022-04-28 09:00:18,305 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-28 09:00:18,306 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:18,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [170713594] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:18,306 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:18,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-28 09:00:18,306 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:18,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1093493967] [2022-04-28 09:00:18,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1093493967] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:18,306 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:18,307 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 09:00:18,307 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [793806947] [2022-04-28 09:00:18,307 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:18,308 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-28 09:00:18,308 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:18,308 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:18,329 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:18,330 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 09:00:18,330 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:18,330 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 09:00:18,330 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-28 09:00:18,331 INFO L87 Difference]: Start difference. First operand 68 states and 84 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:19,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:19,128 INFO L93 Difference]: Finished difference Result 178 states and 225 transitions. [2022-04-28 09:00:19,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 09:00:19,128 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-28 09:00:19,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:19,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:19,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-28 09:00:19,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:19,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-28 09:00:19,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 111 transitions. [2022-04-28 09:00:19,239 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:19,242 INFO L225 Difference]: With dead ends: 178 [2022-04-28 09:00:19,242 INFO L226 Difference]: Without dead ends: 148 [2022-04-28 09:00:19,242 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 52 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=223, Unknown=0, NotChecked=0, Total=306 [2022-04-28 09:00:19,243 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 125 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 212 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 125 SdHoareTripleChecker+Valid, 68 SdHoareTripleChecker+Invalid, 267 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 212 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:19,244 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [125 Valid, 68 Invalid, 267 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 212 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 09:00:19,245 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-04-28 09:00:19,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 87. [2022-04-28 09:00:19,376 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:19,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:19,377 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:19,377 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:19,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:19,381 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-28 09:00:19,381 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-28 09:00:19,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:19,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:19,383 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 148 states. [2022-04-28 09:00:19,385 INFO L87 Difference]: Start difference. First operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 148 states. [2022-04-28 09:00:19,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:19,396 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-28 09:00:19,396 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-28 09:00:19,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:19,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:19,396 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:19,397 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:19,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 79 states have (on average 1.3037974683544304) internal successors, (103), 80 states have internal predecessors, (103), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:19,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 110 transitions. [2022-04-28 09:00:19,400 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 110 transitions. Word has length 28 [2022-04-28 09:00:19,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:19,401 INFO L495 AbstractCegarLoop]: Abstraction has 87 states and 110 transitions. [2022-04-28 09:00:19,401 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:19,402 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 110 transitions. [2022-04-28 09:00:19,550 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:19,550 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 110 transitions. [2022-04-28 09:00:19,551 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 09:00:19,551 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:19,551 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:19,568 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:19,755 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:19,755 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:19,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:19,756 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 1 times [2022-04-28 09:00:19,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:19,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1068224359] [2022-04-28 09:00:19,759 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:19,759 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:19,759 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 2 times [2022-04-28 09:00:19,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:19,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [856676257] [2022-04-28 09:00:19,759 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:19,759 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:19,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:20,203 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:20,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:20,212 INFO L290 TraceCheckUtils]: 0: Hoare triple {3453#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {3437#true} is VALID [2022-04-28 09:00:20,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-28 09:00:20,212 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-28 09:00:20,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3453#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:20,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {3453#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {3437#true} is VALID [2022-04-28 09:00:20,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-28 09:00:20,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-28 09:00:20,217 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-28 09:00:20,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {3437#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {3437#true} is VALID [2022-04-28 09:00:20,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-28 09:00:20,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {3437#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {3442#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:20,222 INFO L290 TraceCheckUtils]: 8: Hoare triple {3442#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {3442#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:20,225 INFO L290 TraceCheckUtils]: 9: Hoare triple {3442#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3443#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (<= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0) (<= 0 |main_~#Dest~0.offset|))} is VALID [2022-04-28 09:00:20,226 INFO L290 TraceCheckUtils]: 10: Hoare triple {3443#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (<= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0) (<= 0 |main_~#Dest~0.offset|))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:00:20,226 INFO L290 TraceCheckUtils]: 11: Hoare triple {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !(~i~0 < ~nodecount~0); {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:00:20,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} ~i~0 := 0; {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:00:20,227 INFO L290 TraceCheckUtils]: 13: Hoare triple {3444#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {3445#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} is VALID [2022-04-28 09:00:20,228 INFO L290 TraceCheckUtils]: 14: Hoare triple {3445#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {3446#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= main_~x~0 1) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} is VALID [2022-04-28 09:00:20,229 INFO L290 TraceCheckUtils]: 15: Hoare triple {3446#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= main_~x~0 1) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {3447#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} is VALID [2022-04-28 09:00:20,229 INFO L290 TraceCheckUtils]: 16: Hoare triple {3447#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= (+ (* main_~j~0 4) |main_~#Dest~0.offset|) 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,230 INFO L290 TraceCheckUtils]: 17: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,230 INFO L290 TraceCheckUtils]: 18: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,231 INFO L290 TraceCheckUtils]: 19: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,231 INFO L290 TraceCheckUtils]: 20: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,232 INFO L290 TraceCheckUtils]: 21: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,232 INFO L290 TraceCheckUtils]: 22: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,233 INFO L290 TraceCheckUtils]: 23: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,233 INFO L290 TraceCheckUtils]: 24: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:20,234 INFO L290 TraceCheckUtils]: 25: Hoare triple {3448#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {3449#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:20,234 INFO L290 TraceCheckUtils]: 26: Hoare triple {3449#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3450#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:00:20,235 INFO L272 TraceCheckUtils]: 27: Hoare triple {3450#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {3451#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:00:20,235 INFO L290 TraceCheckUtils]: 28: Hoare triple {3451#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {3452#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:00:20,236 INFO L290 TraceCheckUtils]: 29: Hoare triple {3452#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3438#false} is VALID [2022-04-28 09:00:20,236 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-28 09:00:20,236 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:20,236 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:20,236 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [856676257] [2022-04-28 09:00:20,236 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [856676257] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:20,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1566409747] [2022-04-28 09:00:20,237 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:20,237 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:20,237 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:20,240 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:20,244 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 09:00:20,349 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:20,350 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:20,351 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 09:00:20,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:20,369 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:20,436 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 79 treesize of output 77 [2022-04-28 09:00:20,566 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 18 [2022-04-28 09:00:20,911 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-28 09:00:20,912 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-04-28 09:00:21,748 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 10 [2022-04-28 09:00:21,846 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {3437#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {3437#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {3437#true} is VALID [2022-04-28 09:00:21,847 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-28 09:00:21,849 INFO L290 TraceCheckUtils]: 7: Hoare triple {3437#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {3478#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} is VALID [2022-04-28 09:00:21,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {3478#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} assume !!(~i~0 < ~nodecount~0); {3478#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} is VALID [2022-04-28 09:00:21,851 INFO L290 TraceCheckUtils]: 9: Hoare triple {3478#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,851 INFO L290 TraceCheckUtils]: 10: Hoare triple {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,853 INFO L290 TraceCheckUtils]: 11: Hoare triple {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,854 INFO L290 TraceCheckUtils]: 12: Hoare triple {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {3485#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {3498#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {3498#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {3502#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= (select (select |#memory_int| |main_~#Dest~0.base|) 0) main_~x~0))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,863 INFO L290 TraceCheckUtils]: 15: Hoare triple {3502#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= (select (select |#memory_int| |main_~#Dest~0.base|) 0) main_~x~0))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,868 INFO L290 TraceCheckUtils]: 16: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,869 INFO L290 TraceCheckUtils]: 18: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,871 INFO L290 TraceCheckUtils]: 19: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,873 INFO L290 TraceCheckUtils]: 21: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,874 INFO L290 TraceCheckUtils]: 22: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,874 INFO L290 TraceCheckUtils]: 23: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,875 INFO L290 TraceCheckUtils]: 24: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~edgecount~0); {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,876 INFO L290 TraceCheckUtils]: 25: Hoare triple {3506#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {3537#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:21,876 INFO L290 TraceCheckUtils]: 26: Hoare triple {3537#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)))) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3541#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:21,877 INFO L272 TraceCheckUtils]: 27: Hoare triple {3541#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:21,877 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:21,878 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-28 09:00:21,878 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-28 09:00:21,878 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:21,878 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:24,176 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_main_~x~0_9 Int)) (or (forall ((v_ArrVal_192 Int)) (<= 0 (select (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |c_main_~#distance~0.offset|) v_ArrVal_192) |c_main_~#distance~0.offset|))) (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) (+ (* c_main_~j~0 4) |c_main_~#Dest~0.offset|)) v_main_~x~0_9)))) is different from false [2022-04-28 09:00:24,640 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) |c_main_~#Dest~0.offset|) v_main_~x~0_9)) (<= 0 (select (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |c_main_~#distance~0.offset|) v_ArrVal_192) |c_main_~#distance~0.offset|)))) is different from false [2022-04-28 09:00:31,932 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-28 09:00:31,932 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-28 09:00:31,932 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:31,933 INFO L272 TraceCheckUtils]: 27: Hoare triple {3541#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:31,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {3568#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3541#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:31,934 INFO L290 TraceCheckUtils]: 25: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {3568#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:00:31,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~edgecount~0); {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,934 INFO L290 TraceCheckUtils]: 23: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~nodecount~0); {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,937 INFO L290 TraceCheckUtils]: 17: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~j~0 < ~edgecount~0); {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {3603#(forall ((v_ArrVal_192 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {3572#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:31,939 INFO L290 TraceCheckUtils]: 14: Hoare triple {3607#(forall ((v_main_~x~0_9 Int)) (or (forall ((v_ArrVal_192 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_9))))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {3603#(forall ((v_ArrVal_192 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:31,941 INFO L290 TraceCheckUtils]: 13: Hoare triple {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {3607#(forall ((v_main_~x~0_9 Int)) (or (forall ((v_ArrVal_192 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_9))))} is VALID [2022-04-28 09:00:31,942 INFO L290 TraceCheckUtils]: 12: Hoare triple {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} ~i~0 := 0; {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} is VALID [2022-04-28 09:00:31,945 INFO L290 TraceCheckUtils]: 11: Hoare triple {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} assume !(~i~0 < ~nodecount~0); {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} is VALID [2022-04-28 09:00:31,946 INFO L290 TraceCheckUtils]: 10: Hoare triple {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} is VALID [2022-04-28 09:00:31,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {3624#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int) (v_ArrVal_191 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9)) (not (<= 0 v_ArrVal_191)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {3611#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9))))} is VALID [2022-04-28 09:00:31,948 INFO L290 TraceCheckUtils]: 8: Hoare triple {3624#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int) (v_ArrVal_191 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9)) (not (<= 0 v_ArrVal_191)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))))} assume !!(~i~0 < ~nodecount~0); {3624#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int) (v_ArrVal_191 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9)) (not (<= 0 v_ArrVal_191)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))))} is VALID [2022-04-28 09:00:31,950 INFO L290 TraceCheckUtils]: 7: Hoare triple {3437#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {3624#(forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int) (v_ArrVal_191 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_9)) (not (<= 0 v_ArrVal_191)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_191) (+ (* v_main_~x~0_9 4) |main_~#distance~0.offset|) v_ArrVal_192) |main_~#distance~0.offset|))))} is VALID [2022-04-28 09:00:31,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {3437#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L290 TraceCheckUtils]: 1: Hoare triple {3437#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-28 09:00:31,951 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 3 not checked. [2022-04-28 09:00:31,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1566409747] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:31,951 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:31,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 11, 11] total 29 [2022-04-28 09:00:31,952 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:31,952 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1068224359] [2022-04-28 09:00:31,952 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1068224359] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:31,952 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:31,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 09:00:31,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1001312777] [2022-04-28 09:00:31,952 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:31,952 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-28 09:00:31,953 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:31,953 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:31,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:31,978 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 09:00:31,979 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:31,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 09:00:31,979 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=591, Unknown=9, NotChecked=102, Total=812 [2022-04-28 09:00:31,980 INFO L87 Difference]: Start difference. First operand 87 states and 110 transitions. Second operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:34,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:34,758 INFO L93 Difference]: Finished difference Result 177 states and 227 transitions. [2022-04-28 09:00:34,758 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 09:00:34,758 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-28 09:00:34,759 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:34,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:34,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-28 09:00:34,761 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:34,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-28 09:00:34,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 140 transitions. [2022-04-28 09:00:34,910 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:34,913 INFO L225 Difference]: With dead ends: 177 [2022-04-28 09:00:34,913 INFO L226 Difference]: Without dead ends: 175 [2022-04-28 09:00:34,914 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 328 ImplicationChecksByTransitivity, 10.2s TimeCoverageRelationStatistics Valid=314, Invalid=1243, Unknown=11, NotChecked=154, Total=1722 [2022-04-28 09:00:34,919 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 187 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 411 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 59 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 411 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:34,919 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [188 Valid, 59 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 411 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 09:00:34,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-28 09:00:35,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 89. [2022-04-28 09:00:35,065 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:35,066 INFO L82 GeneralOperation]: Start isEquivalent. First operand 175 states. Second operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:35,068 INFO L74 IsIncluded]: Start isIncluded. First operand 175 states. Second operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:35,068 INFO L87 Difference]: Start difference. First operand 175 states. Second operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:35,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:35,076 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-28 09:00:35,076 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-28 09:00:35,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:35,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:35,077 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 175 states. [2022-04-28 09:00:35,078 INFO L87 Difference]: Start difference. First operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 175 states. [2022-04-28 09:00:35,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:35,083 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-28 09:00:35,083 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-28 09:00:35,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:35,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:35,084 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:35,084 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:35,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:35,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 114 transitions. [2022-04-28 09:00:35,086 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 114 transitions. Word has length 31 [2022-04-28 09:00:35,086 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:35,086 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 114 transitions. [2022-04-28 09:00:35,086 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 12 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:35,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 114 transitions. [2022-04-28 09:00:35,274 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:35,275 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 114 transitions. [2022-04-28 09:00:35,275 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 09:00:35,275 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:35,275 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:35,302 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:35,476 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:35,476 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:35,476 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:35,477 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 3 times [2022-04-28 09:00:35,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:35,477 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [932501060] [2022-04-28 09:00:35,481 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:35,481 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:35,481 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 4 times [2022-04-28 09:00:35,481 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:35,481 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [471815660] [2022-04-28 09:00:35,481 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:35,482 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:35,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:35,640 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:35,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:35,645 INFO L290 TraceCheckUtils]: 0: Hoare triple {4575#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {4562#true} is VALID [2022-04-28 09:00:35,646 INFO L290 TraceCheckUtils]: 1: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-28 09:00:35,646 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-28 09:00:35,646 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4575#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:35,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {4575#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {4562#true} is VALID [2022-04-28 09:00:35,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-28 09:00:35,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-28 09:00:35,647 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-28 09:00:35,647 INFO L290 TraceCheckUtils]: 5: Hoare triple {4562#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {4562#true} is VALID [2022-04-28 09:00:35,647 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-28 09:00:35,649 INFO L290 TraceCheckUtils]: 7: Hoare triple {4562#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {4567#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:35,650 INFO L290 TraceCheckUtils]: 8: Hoare triple {4567#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {4567#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:35,650 INFO L290 TraceCheckUtils]: 9: Hoare triple {4567#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4568#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:35,651 INFO L290 TraceCheckUtils]: 10: Hoare triple {4568#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4569#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,651 INFO L290 TraceCheckUtils]: 11: Hoare triple {4569#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0); {4569#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,652 INFO L290 TraceCheckUtils]: 12: Hoare triple {4569#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,652 INFO L290 TraceCheckUtils]: 13: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,652 INFO L290 TraceCheckUtils]: 14: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,653 INFO L290 TraceCheckUtils]: 15: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,653 INFO L290 TraceCheckUtils]: 16: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,653 INFO L290 TraceCheckUtils]: 17: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,654 INFO L290 TraceCheckUtils]: 18: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,654 INFO L290 TraceCheckUtils]: 19: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,654 INFO L290 TraceCheckUtils]: 20: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,655 INFO L290 TraceCheckUtils]: 21: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,655 INFO L290 TraceCheckUtils]: 22: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,655 INFO L290 TraceCheckUtils]: 23: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,656 INFO L290 TraceCheckUtils]: 24: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:35,671 INFO L290 TraceCheckUtils]: 25: Hoare triple {4570#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {4571#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0))} is VALID [2022-04-28 09:00:35,672 INFO L290 TraceCheckUtils]: 26: Hoare triple {4571#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4572#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:00:35,672 INFO L272 TraceCheckUtils]: 27: Hoare triple {4572#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {4573#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:00:35,673 INFO L290 TraceCheckUtils]: 28: Hoare triple {4573#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {4574#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:00:35,673 INFO L290 TraceCheckUtils]: 29: Hoare triple {4574#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4563#false} is VALID [2022-04-28 09:00:35,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-28 09:00:35,673 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 09:00:35,673 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:35,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [471815660] [2022-04-28 09:00:35,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [471815660] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:35,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [114851617] [2022-04-28 09:00:35,675 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 09:00:35,675 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:35,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:35,676 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:35,679 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 09:00:35,726 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 09:00:35,726 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:35,726 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 09:00:35,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:35,738 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:35,794 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2022-04-28 09:00:35,877 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-28 09:00:35,877 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 27 [2022-04-28 09:00:37,205 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-28 09:00:37,205 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 20 treesize of output 10 [2022-04-28 09:00:37,294 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {4562#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 5: Hoare triple {4562#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 7: Hoare triple {4562#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {4562#true} is VALID [2022-04-28 09:00:37,295 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-28 09:00:37,298 INFO L290 TraceCheckUtils]: 9: Hoare triple {4562#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4606#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:00:37,298 INFO L290 TraceCheckUtils]: 10: Hoare triple {4606#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4610#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:00:37,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {4610#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0); {4614#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:00:37,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {4614#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4614#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:00:37,301 INFO L290 TraceCheckUtils]: 13: Hoare triple {4614#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4621#(exists ((v_main_~i~0_66 Int)) (and (<= main_~i~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} is VALID [2022-04-28 09:00:37,301 INFO L290 TraceCheckUtils]: 14: Hoare triple {4621#(exists ((v_main_~i~0_66 Int)) (and (<= main_~i~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} assume !(~i~0 < ~nodecount~0); {4625#(exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} is VALID [2022-04-28 09:00:37,302 INFO L290 TraceCheckUtils]: 15: Hoare triple {4625#(exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} ~i~0 := 0; {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} is VALID [2022-04-28 09:00:37,303 INFO L290 TraceCheckUtils]: 16: Hoare triple {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} is VALID [2022-04-28 09:00:37,303 INFO L290 TraceCheckUtils]: 17: Hoare triple {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} assume !(~j~0 < ~edgecount~0); {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} is VALID [2022-04-28 09:00:37,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {4629#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4639#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0))} is VALID [2022-04-28 09:00:37,305 INFO L290 TraceCheckUtils]: 19: Hoare triple {4639#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4643#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:00:37,305 INFO L290 TraceCheckUtils]: 20: Hoare triple {4643#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0) (< main_~i~0 main_~nodecount~0))} assume !(~j~0 < ~edgecount~0); {4643#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:00:37,306 INFO L290 TraceCheckUtils]: 21: Hoare triple {4643#(and (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= (+ (- 1) main_~i~0) 0) (< main_~i~0 main_~nodecount~0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4650#(and (< 1 main_~nodecount~0) (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (<= main_~i~0 2))} is VALID [2022-04-28 09:00:37,309 INFO L290 TraceCheckUtils]: 22: Hoare triple {4650#(and (< 1 main_~nodecount~0) (exists ((v_main_~i~0_66 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_66 1)) (< v_main_~i~0_66 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (<= main_~i~0 2))} assume !(~i~0 < ~nodecount~0); {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} is VALID [2022-04-28 09:00:37,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} ~i~0 := 0; {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} is VALID [2022-04-28 09:00:37,310 INFO L290 TraceCheckUtils]: 24: Hoare triple {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} assume !(~i~0 < ~edgecount~0); {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} is VALID [2022-04-28 09:00:37,311 INFO L290 TraceCheckUtils]: 25: Hoare triple {4654#(exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|)))))} ~i~0 := 0; {4664#(and (exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} is VALID [2022-04-28 09:00:37,311 INFO L290 TraceCheckUtils]: 26: Hoare triple {4664#(and (exists ((v_main_~i~0_66 Int)) (and (< 0 v_main_~i~0_66) (< v_main_~i~0_66 2) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* v_main_~i~0_66 4) (- 4) |main_~#distance~0.offset|))))) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4668#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:37,312 INFO L272 TraceCheckUtils]: 27: Hoare triple {4668#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:37,312 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:37,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-28 09:00:37,312 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-28 09:00:37,313 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:37,313 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:38,068 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-28 09:00:38,068 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-28 09:00:38,069 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:38,069 INFO L272 TraceCheckUtils]: 27: Hoare triple {4668#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:38,070 INFO L290 TraceCheckUtils]: 26: Hoare triple {4606#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4668#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:38,070 INFO L290 TraceCheckUtils]: 25: Hoare triple {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {4606#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:00:38,071 INFO L290 TraceCheckUtils]: 24: Hoare triple {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~edgecount~0); {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:38,071 INFO L290 TraceCheckUtils]: 23: Hoare triple {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:38,071 INFO L290 TraceCheckUtils]: 22: Hoare triple {4708#(or (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {4698#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:00:38,072 INFO L290 TraceCheckUtils]: 21: Hoare triple {4712#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4708#(or (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {4712#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {4712#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,073 INFO L290 TraceCheckUtils]: 19: Hoare triple {4719#(or (< (+ main_~i~0 1) main_~nodecount~0) (not (< main_~i~0 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4712#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,074 INFO L290 TraceCheckUtils]: 18: Hoare triple {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4719#(or (< (+ main_~i~0 1) main_~nodecount~0) (not (< main_~i~0 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,074 INFO L290 TraceCheckUtils]: 17: Hoare triple {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,077 INFO L290 TraceCheckUtils]: 16: Hoare triple {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,077 INFO L290 TraceCheckUtils]: 15: Hoare triple {4733#(or (< 2 main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {4723#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,078 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#(or (< 2 main_~nodecount~0) (not (< 1 main_~nodecount~0)) (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {4733#(or (< 2 main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,080 INFO L290 TraceCheckUtils]: 13: Hoare triple {4741#(or (< 2 main_~nodecount~0) (< (+ main_~i~0 1) main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4737#(or (< 2 main_~nodecount~0) (not (< 1 main_~nodecount~0)) (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {4741#(or (< 2 main_~nodecount~0) (< (+ main_~i~0 1) main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4741#(or (< 2 main_~nodecount~0) (< (+ main_~i~0 1) main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {4748#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0); {4741#(or (< 2 main_~nodecount~0) (< (+ main_~i~0 1) main_~nodecount~0) (not (< 1 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,083 INFO L290 TraceCheckUtils]: 10: Hoare triple {4752#(or (<= (+ main_~i~0 1) 0) (<= 1 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4748#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {4562#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {4752#(or (<= (+ main_~i~0 1) 0) (<= 1 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:38,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-28 09:00:38,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {4562#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {4562#true} is VALID [2022-04-28 09:00:38,083 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {4562#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {4562#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-28 09:00:38,084 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:38,084 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [114851617] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:38,084 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:38,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 16, 16] total 35 [2022-04-28 09:00:38,085 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:38,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [932501060] [2022-04-28 09:00:38,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [932501060] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:38,085 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:38,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 09:00:38,085 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1916301119] [2022-04-28 09:00:38,085 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:38,086 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-28 09:00:38,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:38,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:38,114 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:38,114 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 09:00:38,115 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:38,115 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 09:00:38,116 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=995, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 09:00:38,116 INFO L87 Difference]: Start difference. First operand 89 states and 114 transitions. Second operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:39,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:39,640 INFO L93 Difference]: Finished difference Result 218 states and 287 transitions. [2022-04-28 09:00:39,640 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 09:00:39,641 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-28 09:00:39,641 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:39,641 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:39,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-28 09:00:39,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:39,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-28 09:00:39,645 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 120 transitions. [2022-04-28 09:00:39,749 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:39,753 INFO L225 Difference]: With dead ends: 218 [2022-04-28 09:00:39,754 INFO L226 Difference]: Without dead ends: 216 [2022-04-28 09:00:39,754 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 38 SyntacticMatches, 2 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 489 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=337, Invalid=1643, Unknown=0, NotChecked=0, Total=1980 [2022-04-28 09:00:39,755 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 121 mSDsluCounter, 38 mSDsCounter, 0 mSdLazyCounter, 419 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 122 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 467 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 419 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:39,755 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [122 Valid, 66 Invalid, 467 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 419 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 09:00:39,756 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-04-28 09:00:39,914 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 112. [2022-04-28 09:00:39,914 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:39,915 INFO L82 GeneralOperation]: Start isEquivalent. First operand 216 states. Second operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:39,915 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:39,915 INFO L87 Difference]: Start difference. First operand 216 states. Second operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:39,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:39,921 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-28 09:00:39,921 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-28 09:00:39,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:39,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:39,923 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 216 states. [2022-04-28 09:00:39,923 INFO L87 Difference]: Start difference. First operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 216 states. [2022-04-28 09:00:39,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:39,929 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-28 09:00:39,929 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-28 09:00:39,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:39,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:39,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:39,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:39,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 104 states have (on average 1.3557692307692308) internal successors, (141), 105 states have internal predecessors, (141), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:39,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 148 transitions. [2022-04-28 09:00:39,933 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 148 transitions. Word has length 31 [2022-04-28 09:00:39,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:39,933 INFO L495 AbstractCegarLoop]: Abstraction has 112 states and 148 transitions. [2022-04-28 09:00:39,933 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:39,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 148 transitions. [2022-04-28 09:00:40,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:40,155 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 148 transitions. [2022-04-28 09:00:40,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 09:00:40,156 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:40,156 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:40,172 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:40,356 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:40,358 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:40,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:40,359 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 1 times [2022-04-28 09:00:40,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:40,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2130936752] [2022-04-28 09:00:40,366 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:40,366 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:40,366 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 2 times [2022-04-28 09:00:40,366 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:40,366 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1276623433] [2022-04-28 09:00:40,366 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:40,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:40,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:40,479 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:40,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:40,484 INFO L290 TraceCheckUtils]: 0: Hoare triple {5911#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {5897#true} is VALID [2022-04-28 09:00:40,484 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,484 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-28 09:00:40,484 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-28 09:00:40,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:40,496 INFO L290 TraceCheckUtils]: 0: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-28 09:00:40,497 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-28 09:00:40,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,497 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} #121#return; {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5911#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:40,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {5911#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {5897#true} is VALID [2022-04-28 09:00:40,498 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,498 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-28 09:00:40,499 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-28 09:00:40,499 INFO L290 TraceCheckUtils]: 5: Hoare triple {5897#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {5897#true} is VALID [2022-04-28 09:00:40,499 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-28 09:00:40,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {5897#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {5902#(= main_~i~0 0)} is VALID [2022-04-28 09:00:40,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {5902#(= main_~i~0 0)} assume !!(~i~0 < ~nodecount~0); {5902#(= main_~i~0 0)} is VALID [2022-04-28 09:00:40,501 INFO L290 TraceCheckUtils]: 9: Hoare triple {5902#(= main_~i~0 0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5902#(= main_~i~0 0)} is VALID [2022-04-28 09:00:40,501 INFO L290 TraceCheckUtils]: 10: Hoare triple {5902#(= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5903#(<= main_~i~0 1)} is VALID [2022-04-28 09:00:40,502 INFO L290 TraceCheckUtils]: 11: Hoare triple {5903#(<= main_~i~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,502 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,502 INFO L290 TraceCheckUtils]: 13: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,503 INFO L290 TraceCheckUtils]: 14: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~j~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,503 INFO L290 TraceCheckUtils]: 15: Hoare triple {5904#(<= main_~nodecount~0 1)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,504 INFO L290 TraceCheckUtils]: 19: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,505 INFO L272 TraceCheckUtils]: 21: Hoare triple {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5897#true} is VALID [2022-04-28 09:00:40,505 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-28 09:00:40,505 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-28 09:00:40,505 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,506 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {5897#true} {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} #121#return; {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} havoc #t~mem21; {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,506 INFO L290 TraceCheckUtils]: 27: Hoare triple {5905#(and (= main_~i~0 0) (<= main_~nodecount~0 1))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {5910#(<= main_~nodecount~0 main_~i~0)} is VALID [2022-04-28 09:00:40,507 INFO L290 TraceCheckUtils]: 28: Hoare triple {5910#(<= main_~nodecount~0 main_~i~0)} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5898#false} is VALID [2022-04-28 09:00:40,507 INFO L272 TraceCheckUtils]: 29: Hoare triple {5898#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5898#false} is VALID [2022-04-28 09:00:40,507 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-28 09:00:40,507 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-28 09:00:40,507 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-28 09:00:40,507 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:40,508 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:40,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1276623433] [2022-04-28 09:00:40,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1276623433] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:40,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [113633359] [2022-04-28 09:00:40,508 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:40,508 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:40,508 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:40,509 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:40,510 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 09:00:40,602 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:40,602 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:40,604 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-28 09:00:40,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:40,618 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:40,810 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-28 09:00:40,810 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {5897#true} is VALID [2022-04-28 09:00:40,811 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,811 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-28 09:00:40,811 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-28 09:00:40,811 INFO L290 TraceCheckUtils]: 5: Hoare triple {5897#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {5897#true} is VALID [2022-04-28 09:00:40,811 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-28 09:00:40,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {5897#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:40,814 INFO L290 TraceCheckUtils]: 8: Hoare triple {5936#(<= main_~i~0 0)} assume !!(~i~0 < ~nodecount~0); {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:40,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {5936#(<= main_~i~0 0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:40,814 INFO L290 TraceCheckUtils]: 10: Hoare triple {5936#(<= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5903#(<= main_~i~0 1)} is VALID [2022-04-28 09:00:40,815 INFO L290 TraceCheckUtils]: 11: Hoare triple {5903#(<= main_~i~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,815 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,816 INFO L290 TraceCheckUtils]: 13: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~j~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {5904#(<= main_~nodecount~0 1)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,817 INFO L290 TraceCheckUtils]: 16: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,818 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,818 INFO L290 TraceCheckUtils]: 18: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:40,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,819 INFO L272 TraceCheckUtils]: 21: Hoare triple {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5897#true} is VALID [2022-04-28 09:00:40,819 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-28 09:00:40,819 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-28 09:00:40,819 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:40,820 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {5897#true} {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} #121#return; {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} havoc #t~mem21; {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} is VALID [2022-04-28 09:00:40,821 INFO L290 TraceCheckUtils]: 27: Hoare triple {5973#(and (<= 0 main_~i~0) (<= main_~nodecount~0 1))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {5998#(and (<= main_~nodecount~0 1) (<= 1 main_~i~0))} is VALID [2022-04-28 09:00:40,822 INFO L290 TraceCheckUtils]: 28: Hoare triple {5998#(and (<= main_~nodecount~0 1) (<= 1 main_~i~0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5898#false} is VALID [2022-04-28 09:00:40,822 INFO L272 TraceCheckUtils]: 29: Hoare triple {5898#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5898#false} is VALID [2022-04-28 09:00:40,822 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-28 09:00:40,822 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-28 09:00:40,822 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-28 09:00:40,822 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:40,822 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:41,001 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-28 09:00:41,001 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-28 09:00:41,001 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-28 09:00:41,001 INFO L272 TraceCheckUtils]: 29: Hoare triple {5898#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5898#false} is VALID [2022-04-28 09:00:41,002 INFO L290 TraceCheckUtils]: 28: Hoare triple {5910#(<= main_~nodecount~0 main_~i~0)} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5898#false} is VALID [2022-04-28 09:00:41,003 INFO L290 TraceCheckUtils]: 27: Hoare triple {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {5910#(<= main_~nodecount~0 main_~i~0)} is VALID [2022-04-28 09:00:41,003 INFO L290 TraceCheckUtils]: 26: Hoare triple {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} havoc #t~mem21; {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} is VALID [2022-04-28 09:00:41,004 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {5897#true} {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} #121#return; {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} is VALID [2022-04-28 09:00:41,004 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:41,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-28 09:00:41,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-28 09:00:41,004 INFO L272 TraceCheckUtils]: 21: Hoare triple {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {5897#true} is VALID [2022-04-28 09:00:41,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} is VALID [2022-04-28 09:00:41,005 INFO L290 TraceCheckUtils]: 19: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {6029#(<= main_~nodecount~0 (+ main_~i~0 1))} is VALID [2022-04-28 09:00:41,005 INFO L290 TraceCheckUtils]: 18: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,006 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,006 INFO L290 TraceCheckUtils]: 16: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,007 INFO L290 TraceCheckUtils]: 15: Hoare triple {5904#(<= main_~nodecount~0 1)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,007 INFO L290 TraceCheckUtils]: 14: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !(~j~0 < ~edgecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {5904#(<= main_~nodecount~0 1)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,008 INFO L290 TraceCheckUtils]: 11: Hoare triple {5903#(<= main_~i~0 1)} assume !(~i~0 < ~nodecount~0); {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-28 09:00:41,009 INFO L290 TraceCheckUtils]: 10: Hoare triple {5936#(<= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5903#(<= main_~i~0 1)} is VALID [2022-04-28 09:00:41,009 INFO L290 TraceCheckUtils]: 9: Hoare triple {5936#(<= main_~i~0 0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:41,009 INFO L290 TraceCheckUtils]: 8: Hoare triple {5936#(<= main_~i~0 0)} assume !!(~i~0 < ~nodecount~0); {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:41,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {5897#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {5936#(<= main_~i~0 0)} is VALID [2022-04-28 09:00:41,016 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-28 09:00:41,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {5897#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {5897#true} is VALID [2022-04-28 09:00:41,016 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-28 09:00:41,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-28 09:00:41,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-28 09:00:41,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {5897#true} is VALID [2022-04-28 09:00:41,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-28 09:00:41,017 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:41,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [113633359] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:41,018 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:41,018 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-28 09:00:41,018 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:41,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2130936752] [2022-04-28 09:00:41,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2130936752] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:41,018 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:41,018 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 09:00:41,018 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [661120767] [2022-04-28 09:00:41,018 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:41,019 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 33 [2022-04-28 09:00:41,019 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:41,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:41,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:41,050 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 09:00:41,050 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:41,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 09:00:41,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-28 09:00:41,051 INFO L87 Difference]: Start difference. First operand 112 states and 148 transitions. Second operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:41,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:41,960 INFO L93 Difference]: Finished difference Result 254 states and 333 transitions. [2022-04-28 09:00:41,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 09:00:41,960 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 33 [2022-04-28 09:00:41,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:41,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:41,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-28 09:00:41,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:41,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-28 09:00:41,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 136 transitions. [2022-04-28 09:00:42,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:42,106 INFO L225 Difference]: With dead ends: 254 [2022-04-28 09:00:42,106 INFO L226 Difference]: Without dead ends: 185 [2022-04-28 09:00:42,106 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 65 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2022-04-28 09:00:42,107 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 165 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 166 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:42,107 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [166 Valid, 43 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 09:00:42,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-28 09:00:42,387 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 131. [2022-04-28 09:00:42,387 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:42,388 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:42,389 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:42,391 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:42,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:42,397 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-28 09:00:42,397 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-28 09:00:42,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:42,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:42,398 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 185 states. [2022-04-28 09:00:42,399 INFO L87 Difference]: Start difference. First operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 185 states. [2022-04-28 09:00:42,405 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:42,405 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-28 09:00:42,406 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-28 09:00:42,406 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:42,406 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:42,406 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:42,406 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:42,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 122 states have (on average 1.3442622950819672) internal successors, (164), 124 states have internal predecessors, (164), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:42,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 172 transitions. [2022-04-28 09:00:42,410 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 172 transitions. Word has length 33 [2022-04-28 09:00:42,410 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:42,410 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 172 transitions. [2022-04-28 09:00:42,410 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:00:42,410 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 172 transitions. [2022-04-28 09:00:42,664 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:42,665 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 172 transitions. [2022-04-28 09:00:42,665 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 09:00:42,665 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:42,665 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:42,684 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:42,867 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:42,867 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:42,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:42,868 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 3 times [2022-04-28 09:00:42,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:42,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1424949993] [2022-04-28 09:00:42,870 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:42,870 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:42,870 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 4 times [2022-04-28 09:00:42,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:42,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1819968548] [2022-04-28 09:00:42,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:42,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:42,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:42,975 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:42,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:42,980 INFO L290 TraceCheckUtils]: 0: Hoare triple {7275#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {7265#true} is VALID [2022-04-28 09:00:42,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-28 09:00:42,980 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7275#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {7275#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 5: Hoare triple {7265#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 7: Hoare triple {7265#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:42,981 INFO L290 TraceCheckUtils]: 9: Hoare triple {7265#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7265#true} is VALID [2022-04-28 09:00:42,982 INFO L290 TraceCheckUtils]: 10: Hoare triple {7265#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7265#true} is VALID [2022-04-28 09:00:42,982 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:42,982 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:42,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {7270#(= main_~j~0 0)} is VALID [2022-04-28 09:00:42,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {7270#(= main_~j~0 0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7270#(= main_~j~0 0)} is VALID [2022-04-28 09:00:42,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {7270#(= main_~j~0 0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7270#(= main_~j~0 0)} is VALID [2022-04-28 09:00:42,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {7270#(= main_~j~0 0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7271#(<= 1 main_~j~0)} is VALID [2022-04-28 09:00:42,984 INFO L290 TraceCheckUtils]: 17: Hoare triple {7271#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,984 INFO L290 TraceCheckUtils]: 18: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,984 INFO L290 TraceCheckUtils]: 19: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,985 INFO L290 TraceCheckUtils]: 20: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,985 INFO L290 TraceCheckUtils]: 21: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:42,986 INFO L290 TraceCheckUtils]: 23: Hoare triple {7272#(<= 2 main_~edgecount~0)} ~i~0 := 0; {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:42,986 INFO L290 TraceCheckUtils]: 24: Hoare triple {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:42,986 INFO L290 TraceCheckUtils]: 25: Hoare triple {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:42,987 INFO L290 TraceCheckUtils]: 26: Hoare triple {7273#(and (<= 2 main_~edgecount~0) (= main_~i~0 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7274#(<= (+ main_~i~0 1) main_~edgecount~0)} is VALID [2022-04-28 09:00:42,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {7274#(<= (+ main_~i~0 1) main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {7266#false} is VALID [2022-04-28 09:00:42,987 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-28 09:00:42,987 INFO L290 TraceCheckUtils]: 29: Hoare triple {7266#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7266#false} is VALID [2022-04-28 09:00:42,987 INFO L272 TraceCheckUtils]: 30: Hoare triple {7266#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {7266#false} is VALID [2022-04-28 09:00:42,987 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-28 09:00:42,988 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-28 09:00:42,988 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-28 09:00:42,988 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:42,988 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:42,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1819968548] [2022-04-28 09:00:42,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1819968548] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:42,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1291472660] [2022-04-28 09:00:42,988 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 09:00:42,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:42,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:42,989 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:42,990 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 09:00:43,049 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 09:00:43,050 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:43,050 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-28 09:00:43,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:43,060 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:43,211 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {7265#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 5: Hoare triple {7265#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 7: Hoare triple {7265#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 9: Hoare triple {7265#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7265#true} is VALID [2022-04-28 09:00:43,211 INFO L290 TraceCheckUtils]: 10: Hoare triple {7265#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7265#true} is VALID [2022-04-28 09:00:43,212 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:43,212 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:43,214 INFO L290 TraceCheckUtils]: 13: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,215 INFO L290 TraceCheckUtils]: 14: Hoare triple {7318#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {7318#(<= 0 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,215 INFO L290 TraceCheckUtils]: 16: Hoare triple {7318#(<= 0 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7271#(<= 1 main_~j~0)} is VALID [2022-04-28 09:00:43,216 INFO L290 TraceCheckUtils]: 17: Hoare triple {7271#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,216 INFO L290 TraceCheckUtils]: 18: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,217 INFO L290 TraceCheckUtils]: 20: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,217 INFO L290 TraceCheckUtils]: 21: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,217 INFO L290 TraceCheckUtils]: 22: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,218 INFO L290 TraceCheckUtils]: 23: Hoare triple {7272#(<= 2 main_~edgecount~0)} ~i~0 := 0; {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} is VALID [2022-04-28 09:00:43,218 INFO L290 TraceCheckUtils]: 24: Hoare triple {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} is VALID [2022-04-28 09:00:43,219 INFO L290 TraceCheckUtils]: 25: Hoare triple {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} is VALID [2022-04-28 09:00:43,219 INFO L290 TraceCheckUtils]: 26: Hoare triple {7349#(and (<= main_~i~0 0) (<= 2 main_~edgecount~0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7359#(and (<= main_~i~0 1) (<= 2 main_~edgecount~0))} is VALID [2022-04-28 09:00:43,219 INFO L290 TraceCheckUtils]: 27: Hoare triple {7359#(and (<= main_~i~0 1) (<= 2 main_~edgecount~0))} assume !(~i~0 < ~edgecount~0); {7266#false} is VALID [2022-04-28 09:00:43,219 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L290 TraceCheckUtils]: 29: Hoare triple {7266#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L272 TraceCheckUtils]: 30: Hoare triple {7266#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-28 09:00:43,220 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:43,220 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:43,353 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-28 09:00:43,353 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-28 09:00:43,353 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-28 09:00:43,353 INFO L272 TraceCheckUtils]: 30: Hoare triple {7266#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {7266#false} is VALID [2022-04-28 09:00:43,353 INFO L290 TraceCheckUtils]: 29: Hoare triple {7266#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7266#false} is VALID [2022-04-28 09:00:43,353 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-28 09:00:43,354 INFO L290 TraceCheckUtils]: 27: Hoare triple {7274#(<= (+ main_~i~0 1) main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {7266#false} is VALID [2022-04-28 09:00:43,354 INFO L290 TraceCheckUtils]: 26: Hoare triple {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7274#(<= (+ main_~i~0 1) main_~edgecount~0)} is VALID [2022-04-28 09:00:43,354 INFO L290 TraceCheckUtils]: 25: Hoare triple {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:00:43,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:00:43,368 INFO L290 TraceCheckUtils]: 23: Hoare triple {7272#(<= 2 main_~edgecount~0)} ~i~0 := 0; {7402#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:00:43,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,368 INFO L290 TraceCheckUtils]: 20: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,369 INFO L290 TraceCheckUtils]: 19: Hoare triple {7272#(<= 2 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {7272#(<= 2 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,370 INFO L290 TraceCheckUtils]: 17: Hoare triple {7271#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7272#(<= 2 main_~edgecount~0)} is VALID [2022-04-28 09:00:43,370 INFO L290 TraceCheckUtils]: 16: Hoare triple {7318#(<= 0 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {7271#(<= 1 main_~j~0)} is VALID [2022-04-28 09:00:43,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {7318#(<= 0 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {7318#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {7318#(<= 0 main_~j~0)} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 10: Hoare triple {7265#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {7265#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {7265#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {7265#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-28 09:00:43,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-28 09:00:43,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {7265#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {7265#true} is VALID [2022-04-28 09:00:43,373 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-28 09:00:43,373 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:43,373 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1291472660] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:43,373 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:43,373 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-28 09:00:43,373 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:43,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1424949993] [2022-04-28 09:00:43,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1424949993] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:43,374 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:43,374 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 09:00:43,374 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [859566077] [2022-04-28 09:00:43,374 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:43,374 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:43,374 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:43,375 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:43,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:43,404 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 09:00:43,404 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:43,404 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 09:00:43,404 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-28 09:00:43,405 INFO L87 Difference]: Start difference. First operand 131 states and 172 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:44,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:44,495 INFO L93 Difference]: Finished difference Result 240 states and 310 transitions. [2022-04-28 09:00:44,495 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 09:00:44,495 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:44,495 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:44,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:44,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-28 09:00:44,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:44,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-28 09:00:44,498 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 104 transitions. [2022-04-28 09:00:44,588 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:44,592 INFO L225 Difference]: With dead ends: 240 [2022-04-28 09:00:44,593 INFO L226 Difference]: Without dead ends: 219 [2022-04-28 09:00:44,593 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 64 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=98, Invalid=282, Unknown=0, NotChecked=0, Total=380 [2022-04-28 09:00:44,594 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 120 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 232 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 271 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 232 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:44,594 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 70 Invalid, 271 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 232 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 09:00:44,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-28 09:00:44,988 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 174. [2022-04-28 09:00:44,988 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:44,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:44,989 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:44,989 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:44,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:44,994 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-28 09:00:44,994 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-28 09:00:44,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:44,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:44,996 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 219 states. [2022-04-28 09:00:44,996 INFO L87 Difference]: Start difference. First operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 219 states. [2022-04-28 09:00:45,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:45,001 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-28 09:00:45,001 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-28 09:00:45,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:45,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:45,002 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:45,002 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:45,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 165 states have (on average 1.3393939393939394) internal successors, (221), 167 states have internal predecessors, (221), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:45,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 229 transitions. [2022-04-28 09:00:45,006 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 229 transitions. Word has length 34 [2022-04-28 09:00:45,006 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:45,006 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 229 transitions. [2022-04-28 09:00:45,006 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:45,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 174 states and 229 transitions. [2022-04-28 09:00:45,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 229 edges. 229 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:45,377 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 229 transitions. [2022-04-28 09:00:45,378 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 09:00:45,378 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:45,378 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:45,394 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:45,583 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:45,584 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:45,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:45,584 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 5 times [2022-04-28 09:00:45,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:45,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1821855988] [2022-04-28 09:00:45,588 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:45,588 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:45,588 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 6 times [2022-04-28 09:00:45,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:45,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [453527551] [2022-04-28 09:00:45,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:45,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:45,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:45,659 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:45,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:45,663 INFO L290 TraceCheckUtils]: 0: Hoare triple {8772#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {8765#true} is VALID [2022-04-28 09:00:45,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-28 09:00:45,663 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8772#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:45,664 INFO L290 TraceCheckUtils]: 1: Hoare triple {8772#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L290 TraceCheckUtils]: 5: Hoare triple {8765#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {8765#true} is VALID [2022-04-28 09:00:45,664 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-28 09:00:45,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {8765#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {8770#(and (= main_~source~0 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:45,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {8770#(and (= main_~source~0 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {8770#(and (= main_~source~0 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:45,667 INFO L290 TraceCheckUtils]: 9: Hoare triple {8770#(and (= main_~source~0 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8770#(and (= main_~source~0 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:45,668 INFO L290 TraceCheckUtils]: 10: Hoare triple {8770#(and (= main_~source~0 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8771#(and (= main_~source~0 0) (not (= main_~i~0 0)))} is VALID [2022-04-28 09:00:45,668 INFO L290 TraceCheckUtils]: 11: Hoare triple {8771#(and (= main_~source~0 0) (not (= main_~i~0 0)))} assume !!(~i~0 < ~nodecount~0); {8771#(and (= main_~source~0 0) (not (= main_~i~0 0)))} is VALID [2022-04-28 09:00:45,668 INFO L290 TraceCheckUtils]: 12: Hoare triple {8771#(and (= main_~source~0 0) (not (= main_~i~0 0)))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {8766#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 15: Hoare triple {8766#false} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 16: Hoare triple {8766#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 21: Hoare triple {8766#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {8766#false} is VALID [2022-04-28 09:00:45,669 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 24: Hoare triple {8766#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 29: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L272 TraceCheckUtils]: 30: Hoare triple {8766#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-28 09:00:45,670 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-28 09:00:45,671 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-28 09:00:45,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:45,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [453527551] [2022-04-28 09:00:45,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [453527551] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:45,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [12663289] [2022-04-28 09:00:45,671 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 09:00:45,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:45,672 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:45,672 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:45,682 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 09:00:45,760 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2022-04-28 09:00:45,760 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:45,762 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 09:00:45,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:45,778 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:45,911 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L290 TraceCheckUtils]: 5: Hoare triple {8765#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {8765#true} is VALID [2022-04-28 09:00:45,911 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-28 09:00:45,913 INFO L290 TraceCheckUtils]: 7: Hoare triple {8765#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} is VALID [2022-04-28 09:00:45,914 INFO L290 TraceCheckUtils]: 8: Hoare triple {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} assume !!(~i~0 < ~nodecount~0); {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} is VALID [2022-04-28 09:00:45,914 INFO L290 TraceCheckUtils]: 9: Hoare triple {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} is VALID [2022-04-28 09:00:45,915 INFO L290 TraceCheckUtils]: 10: Hoare triple {8797#(and (<= main_~source~0 0) (<= 0 main_~i~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8807#(and (<= main_~source~0 0) (<= 1 main_~i~0))} is VALID [2022-04-28 09:00:45,915 INFO L290 TraceCheckUtils]: 11: Hoare triple {8807#(and (<= main_~source~0 0) (<= 1 main_~i~0))} assume !!(~i~0 < ~nodecount~0); {8807#(and (<= main_~source~0 0) (<= 1 main_~i~0))} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 12: Hoare triple {8807#(and (<= main_~source~0 0) (<= 1 main_~i~0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {8766#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8766#false} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 15: Hoare triple {8766#false} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 16: Hoare triple {8766#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8766#false} is VALID [2022-04-28 09:00:45,916 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 21: Hoare triple {8766#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 24: Hoare triple {8766#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L290 TraceCheckUtils]: 29: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {8766#false} is VALID [2022-04-28 09:00:45,917 INFO L272 TraceCheckUtils]: 30: Hoare triple {8766#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {8766#false} is VALID [2022-04-28 09:00:45,918 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-28 09:00:45,918 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-28 09:00:45,918 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-28 09:00:45,918 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-28 09:00:45,918 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 09:00:45,918 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [12663289] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:45,918 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 09:00:45,918 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 7 [2022-04-28 09:00:45,919 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:45,919 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1821855988] [2022-04-28 09:00:45,919 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1821855988] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:45,919 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:45,919 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 09:00:45,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [981365777] [2022-04-28 09:00:45,919 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:45,919 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:45,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:45,920 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:45,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:45,946 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 09:00:45,946 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:45,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 09:00:45,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 09:00:45,946 INFO L87 Difference]: Start difference. First operand 174 states and 229 transitions. Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:46,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:46,484 INFO L93 Difference]: Finished difference Result 292 states and 382 transitions. [2022-04-28 09:00:46,484 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 09:00:46,484 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:46,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:46,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:46,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-28 09:00:46,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:46,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-28 09:00:46,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 88 transitions. [2022-04-28 09:00:46,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:46,563 INFO L225 Difference]: With dead ends: 292 [2022-04-28 09:00:46,563 INFO L226 Difference]: Without dead ends: 154 [2022-04-28 09:00:46,563 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 09:00:46,564 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 25 mSDsluCounter, 35 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:46,564 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 70 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 09:00:46,565 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-04-28 09:00:46,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 139. [2022-04-28 09:00:46,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:46,939 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:46,940 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:46,940 INFO L87 Difference]: Start difference. First operand 154 states. Second operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:46,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:46,943 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-28 09:00:46,943 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-28 09:00:46,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:46,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:46,943 INFO L74 IsIncluded]: Start isIncluded. First operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 154 states. [2022-04-28 09:00:46,944 INFO L87 Difference]: Start difference. First operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 154 states. [2022-04-28 09:00:46,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:46,946 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-28 09:00:46,946 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-28 09:00:46,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:46,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:46,946 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:46,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:46,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 139 states, 130 states have (on average 1.2846153846153847) internal successors, (167), 132 states have internal predecessors, (167), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:46,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 175 transitions. [2022-04-28 09:00:46,949 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 175 transitions. Word has length 34 [2022-04-28 09:00:46,949 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:46,950 INFO L495 AbstractCegarLoop]: Abstraction has 139 states and 175 transitions. [2022-04-28 09:00:46,950 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:46,950 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 139 states and 175 transitions. [2022-04-28 09:00:47,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:47,251 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 175 transitions. [2022-04-28 09:00:47,252 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 09:00:47,252 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:47,252 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:47,268 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 09:00:47,452 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 09:00:47,452 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:47,453 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:47,453 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 7 times [2022-04-28 09:00:47,453 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:47,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2123430798] [2022-04-28 09:00:47,458 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:47,458 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:47,458 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 8 times [2022-04-28 09:00:47,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:47,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1176681026] [2022-04-28 09:00:47,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:47,459 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:47,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:47,543 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:47,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:47,547 INFO L290 TraceCheckUtils]: 0: Hoare triple {10058#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {10046#true} is VALID [2022-04-28 09:00:47,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-28 09:00:47,547 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10058#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:47,548 INFO L290 TraceCheckUtils]: 1: Hoare triple {10058#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L290 TraceCheckUtils]: 5: Hoare triple {10046#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {10046#true} is VALID [2022-04-28 09:00:47,548 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-28 09:00:47,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {10046#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {10051#(= main_~i~0 0)} is VALID [2022-04-28 09:00:47,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {10051#(= main_~i~0 0)} assume !!(~i~0 < ~nodecount~0); {10051#(= main_~i~0 0)} is VALID [2022-04-28 09:00:47,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {10051#(= main_~i~0 0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10051#(= main_~i~0 0)} is VALID [2022-04-28 09:00:47,550 INFO L290 TraceCheckUtils]: 10: Hoare triple {10051#(= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,550 INFO L290 TraceCheckUtils]: 11: Hoare triple {10052#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {10052#(<= 1 main_~i~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {10052#(<= 1 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10053#(<= 2 main_~i~0)} is VALID [2022-04-28 09:00:47,552 INFO L290 TraceCheckUtils]: 14: Hoare triple {10053#(<= 2 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,552 INFO L290 TraceCheckUtils]: 15: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {10054#(<= 3 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,553 INFO L290 TraceCheckUtils]: 17: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,553 INFO L290 TraceCheckUtils]: 18: Hoare triple {10054#(<= 3 main_~nodecount~0)} ~i~0 := 0; {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:47,553 INFO L290 TraceCheckUtils]: 19: Hoare triple {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:47,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} assume !(~j~0 < ~edgecount~0); {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:47,554 INFO L290 TraceCheckUtils]: 21: Hoare triple {10055#(and (<= 3 main_~nodecount~0) (= main_~i~0 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:47,554 INFO L290 TraceCheckUtils]: 22: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:47,555 INFO L290 TraceCheckUtils]: 23: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !(~j~0 < ~edgecount~0); {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:47,555 INFO L290 TraceCheckUtils]: 24: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10057#(<= (+ main_~i~0 1) main_~nodecount~0)} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 25: Hoare triple {10057#(<= (+ main_~i~0 1) main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 29: Hoare triple {10047#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L272 TraceCheckUtils]: 30: Hoare triple {10047#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-28 09:00:47,556 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-28 09:00:47,557 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 1 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:47,557 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:47,557 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1176681026] [2022-04-28 09:00:47,557 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1176681026] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:47,557 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1322314395] [2022-04-28 09:00:47,557 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:00:47,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:47,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:47,558 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:47,579 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 09:00:47,645 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:00:47,645 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:47,646 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 09:00:47,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:47,656 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:47,844 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L290 TraceCheckUtils]: 1: Hoare triple {10046#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L290 TraceCheckUtils]: 5: Hoare triple {10046#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {10046#true} is VALID [2022-04-28 09:00:47,845 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-28 09:00:47,847 INFO L290 TraceCheckUtils]: 7: Hoare triple {10046#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:47,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {10083#(<= 0 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:47,847 INFO L290 TraceCheckUtils]: 9: Hoare triple {10083#(<= 0 main_~i~0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:47,848 INFO L290 TraceCheckUtils]: 10: Hoare triple {10083#(<= 0 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,848 INFO L290 TraceCheckUtils]: 11: Hoare triple {10052#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {10052#(<= 1 main_~i~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:47,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {10052#(<= 1 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10053#(<= 2 main_~i~0)} is VALID [2022-04-28 09:00:47,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {10053#(<= 2 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,850 INFO L290 TraceCheckUtils]: 15: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {10054#(<= 3 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,851 INFO L290 TraceCheckUtils]: 17: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:47,851 INFO L290 TraceCheckUtils]: 18: Hoare triple {10054#(<= 3 main_~nodecount~0)} ~i~0 := 0; {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} is VALID [2022-04-28 09:00:47,852 INFO L290 TraceCheckUtils]: 19: Hoare triple {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} is VALID [2022-04-28 09:00:47,852 INFO L290 TraceCheckUtils]: 20: Hoare triple {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} assume !(~j~0 < ~edgecount~0); {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} is VALID [2022-04-28 09:00:47,853 INFO L290 TraceCheckUtils]: 21: Hoare triple {10117#(and (<= 3 main_~nodecount~0) (<= main_~i~0 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} is VALID [2022-04-28 09:00:47,853 INFO L290 TraceCheckUtils]: 22: Hoare triple {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} is VALID [2022-04-28 09:00:47,854 INFO L290 TraceCheckUtils]: 23: Hoare triple {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} assume !(~j~0 < ~edgecount~0); {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} is VALID [2022-04-28 09:00:47,854 INFO L290 TraceCheckUtils]: 24: Hoare triple {10127#(and (<= 3 main_~nodecount~0) (<= main_~i~0 1))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10137#(and (<= 3 main_~nodecount~0) (<= main_~i~0 2))} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 25: Hoare triple {10137#(and (<= 3 main_~nodecount~0) (<= main_~i~0 2))} assume !(~i~0 < ~nodecount~0); {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 29: Hoare triple {10047#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L272 TraceCheckUtils]: 30: Hoare triple {10047#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-28 09:00:47,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-28 09:00:47,856 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 5 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:47,856 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L272 TraceCheckUtils]: 30: Hoare triple {10047#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {10047#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-28 09:00:48,018 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-28 09:00:48,019 INFO L290 TraceCheckUtils]: 25: Hoare triple {10057#(<= (+ main_~i~0 1) main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {10047#false} is VALID [2022-04-28 09:00:48,019 INFO L290 TraceCheckUtils]: 24: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10057#(<= (+ main_~i~0 1) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,019 INFO L290 TraceCheckUtils]: 23: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !(~j~0 < ~edgecount~0); {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,020 INFO L290 TraceCheckUtils]: 21: Hoare triple {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {10056#(<= (+ main_~i~0 2) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,020 INFO L290 TraceCheckUtils]: 20: Hoare triple {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} assume !(~j~0 < ~edgecount~0); {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,021 INFO L290 TraceCheckUtils]: 19: Hoare triple {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,021 INFO L290 TraceCheckUtils]: 18: Hoare triple {10054#(<= 3 main_~nodecount~0)} ~i~0 := 0; {10201#(<= (+ main_~i~0 3) main_~nodecount~0)} is VALID [2022-04-28 09:00:48,021 INFO L290 TraceCheckUtils]: 17: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:48,021 INFO L290 TraceCheckUtils]: 16: Hoare triple {10054#(<= 3 main_~nodecount~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:48,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {10054#(<= 3 main_~nodecount~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:48,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {10053#(<= 2 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10054#(<= 3 main_~nodecount~0)} is VALID [2022-04-28 09:00:48,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {10052#(<= 1 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10053#(<= 2 main_~i~0)} is VALID [2022-04-28 09:00:48,023 INFO L290 TraceCheckUtils]: 12: Hoare triple {10052#(<= 1 main_~i~0)} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:48,023 INFO L290 TraceCheckUtils]: 11: Hoare triple {10052#(<= 1 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:48,023 INFO L290 TraceCheckUtils]: 10: Hoare triple {10083#(<= 0 main_~i~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10052#(<= 1 main_~i~0)} is VALID [2022-04-28 09:00:48,024 INFO L290 TraceCheckUtils]: 9: Hoare triple {10083#(<= 0 main_~i~0)} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:48,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {10083#(<= 0 main_~i~0)} assume !!(~i~0 < ~nodecount~0); {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:48,026 INFO L290 TraceCheckUtils]: 7: Hoare triple {10046#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {10083#(<= 0 main_~i~0)} is VALID [2022-04-28 09:00:48,026 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-28 09:00:48,026 INFO L290 TraceCheckUtils]: 5: Hoare triple {10046#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {10046#true} is VALID [2022-04-28 09:00:48,026 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-28 09:00:48,026 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-28 09:00:48,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-28 09:00:48,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {10046#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {10046#true} is VALID [2022-04-28 09:00:48,027 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-28 09:00:48,027 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 5 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:00:48,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1322314395] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:00:48,027 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:00:48,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-28 09:00:48,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:00:48,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2123430798] [2022-04-28 09:00:48,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2123430798] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:00:48,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:00:48,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 09:00:48,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1690556641] [2022-04-28 09:00:48,028 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:00:48,028 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:48,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:00:48,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:48,051 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:48,051 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 09:00:48,051 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:48,051 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 09:00:48,051 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=155, Unknown=0, NotChecked=0, Total=210 [2022-04-28 09:00:48,051 INFO L87 Difference]: Start difference. First operand 139 states and 175 transitions. Second operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:50,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:50,074 INFO L93 Difference]: Finished difference Result 296 states and 374 transitions. [2022-04-28 09:00:50,074 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 09:00:50,075 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-28 09:00:50,075 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:00:50,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:50,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-28 09:00:50,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:50,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-28 09:00:50,081 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 151 transitions. [2022-04-28 09:00:50,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:50,222 INFO L225 Difference]: With dead ends: 296 [2022-04-28 09:00:50,223 INFO L226 Difference]: Without dead ends: 275 [2022-04-28 09:00:50,223 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 63 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 115 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=132, Invalid=420, Unknown=0, NotChecked=0, Total=552 [2022-04-28 09:00:50,227 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 168 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 482 mSolverCounterSat, 76 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 168 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 558 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 76 IncrementalHoareTripleChecker+Valid, 482 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 09:00:50,227 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [168 Valid, 97 Invalid, 558 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [76 Valid, 482 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 09:00:50,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2022-04-28 09:00:50,768 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 154. [2022-04-28 09:00:50,768 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:00:50,769 INFO L82 GeneralOperation]: Start isEquivalent. First operand 275 states. Second operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:50,769 INFO L74 IsIncluded]: Start isIncluded. First operand 275 states. Second operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:50,769 INFO L87 Difference]: Start difference. First operand 275 states. Second operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:50,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:50,775 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-28 09:00:50,775 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-28 09:00:50,776 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:50,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:50,776 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 275 states. [2022-04-28 09:00:50,777 INFO L87 Difference]: Start difference. First operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 275 states. [2022-04-28 09:00:50,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:00:50,784 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-28 09:00:50,784 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-28 09:00:50,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:00:50,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:00:50,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:00:50,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:00:50,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 145 states have (on average 1.289655172413793) internal successors, (187), 147 states have internal predecessors, (187), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:00:50,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 195 transitions. [2022-04-28 09:00:50,788 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 195 transitions. Word has length 34 [2022-04-28 09:00:50,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:00:50,788 INFO L495 AbstractCegarLoop]: Abstraction has 154 states and 195 transitions. [2022-04-28 09:00:50,788 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:00:50,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 154 states and 195 transitions. [2022-04-28 09:00:51,171 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:00:51,171 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 195 transitions. [2022-04-28 09:00:51,172 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 09:00:51,172 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:00:51,172 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:00:51,189 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-28 09:00:51,372 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:51,387 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:00:51,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:00:51,388 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 5 times [2022-04-28 09:00:51,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:00:51,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1425742467] [2022-04-28 09:00:51,410 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:00:51,411 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:00:51,411 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 6 times [2022-04-28 09:00:51,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:00:51,411 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [298277383] [2022-04-28 09:00:51,411 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:00:51,411 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:00:51,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:52,035 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:00:52,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:52,039 INFO L290 TraceCheckUtils]: 0: Hoare triple {11754#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {11735#true} is VALID [2022-04-28 09:00:52,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-28 09:00:52,039 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-28 09:00:52,039 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11754#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:00:52,040 INFO L290 TraceCheckUtils]: 1: Hoare triple {11754#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {11735#true} is VALID [2022-04-28 09:00:52,040 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-28 09:00:52,040 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-28 09:00:52,040 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-28 09:00:52,040 INFO L290 TraceCheckUtils]: 5: Hoare triple {11735#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {11735#true} is VALID [2022-04-28 09:00:52,040 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-28 09:00:52,047 INFO L290 TraceCheckUtils]: 7: Hoare triple {11735#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {11740#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 0)))} is VALID [2022-04-28 09:00:52,048 INFO L290 TraceCheckUtils]: 8: Hoare triple {11740#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 0)))} assume !!(~i~0 < ~nodecount~0); {11740#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 0)))} is VALID [2022-04-28 09:00:52,049 INFO L290 TraceCheckUtils]: 9: Hoare triple {11740#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 0)))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11741#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|))) (= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:52,049 INFO L290 TraceCheckUtils]: 10: Hoare triple {11741#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (not (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|))) (= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} is VALID [2022-04-28 09:00:52,050 INFO L290 TraceCheckUtils]: 11: Hoare triple {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} assume !(~i~0 < ~nodecount~0); {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} is VALID [2022-04-28 09:00:52,050 INFO L290 TraceCheckUtils]: 12: Hoare triple {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} ~i~0 := 0; {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} is VALID [2022-04-28 09:00:52,051 INFO L290 TraceCheckUtils]: 13: Hoare triple {11742#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) (select (select |#memory_int| |main_~#distance~0.base|) 0))))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {11743#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) (select (select |#memory_int| |main_~#distance~0.base|) 0))) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:00:52,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {11743#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) (select (select |#memory_int| |main_~#distance~0.base|) 0))) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11744#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (not (= (+ (* main_~x~0 4) |main_~#distance~0.offset|) 0)))} is VALID [2022-04-28 09:00:52,052 INFO L290 TraceCheckUtils]: 15: Hoare triple {11744#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (not (= (+ (* main_~x~0 4) |main_~#distance~0.offset|) 0)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11745#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0))} is VALID [2022-04-28 09:00:52,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {11745#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) 3) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11746#(and (= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= (* main_~j~0 4) 4))} is VALID [2022-04-28 09:00:52,053 INFO L290 TraceCheckUtils]: 17: Hoare triple {11746#(and (= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= (* main_~j~0 4) 4))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11747#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (not (= (+ (* main_~x~0 4) |main_~#distance~0.offset|) 0)))} is VALID [2022-04-28 09:00:52,054 INFO L290 TraceCheckUtils]: 18: Hoare triple {11747#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (not (= (+ (* main_~x~0 4) |main_~#distance~0.offset|) 0)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,054 INFO L290 TraceCheckUtils]: 19: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,055 INFO L290 TraceCheckUtils]: 20: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} assume !(~j~0 < ~edgecount~0); {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,055 INFO L290 TraceCheckUtils]: 21: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,055 INFO L290 TraceCheckUtils]: 22: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} assume !(~i~0 < ~nodecount~0); {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,056 INFO L290 TraceCheckUtils]: 23: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} ~i~0 := 0; {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,056 INFO L290 TraceCheckUtils]: 24: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,057 INFO L290 TraceCheckUtils]: 25: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,057 INFO L290 TraceCheckUtils]: 26: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} is VALID [2022-04-28 09:00:52,057 INFO L290 TraceCheckUtils]: 27: Hoare triple {11748#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:52,058 INFO L290 TraceCheckUtils]: 28: Hoare triple {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:52,058 INFO L290 TraceCheckUtils]: 29: Hoare triple {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:52,058 INFO L290 TraceCheckUtils]: 30: Hoare triple {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:00:52,059 INFO L290 TraceCheckUtils]: 31: Hoare triple {11749#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {11750#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:00:52,061 INFO L290 TraceCheckUtils]: 32: Hoare triple {11750#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11751#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:00:52,061 INFO L272 TraceCheckUtils]: 33: Hoare triple {11751#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {11752#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:00:52,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {11752#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {11753#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:00:52,062 INFO L290 TraceCheckUtils]: 35: Hoare triple {11753#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {11736#false} is VALID [2022-04-28 09:00:52,062 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-28 09:00:52,062 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:00:52,062 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:00:52,063 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [298277383] [2022-04-28 09:00:52,063 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [298277383] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:00:52,063 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [669242375] [2022-04-28 09:00:52,063 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 09:00:52,063 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:00:52,063 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:00:52,064 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:00:52,071 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 09:00:52,171 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-28 09:00:52,171 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:00:52,173 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-28 09:00:52,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:00:52,189 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:00:52,258 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 54 treesize of output 50 [2022-04-28 09:00:52,406 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,407 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,408 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,410 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 42 [2022-04-28 09:00:52,768 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,769 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,770 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,770 INFO L173 IndexEqualityManager]: detected equality via solver [2022-04-28 09:00:52,771 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:00:52,782 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-28 09:00:52,782 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 5 select indices, 5 select index equivalence classes, 4 disjoint index pairs (out of 10 index pairs), introduced 4 new quantified variables, introduced 1 case distinctions, treesize of input 59 treesize of output 63 [2022-04-28 09:00:53,164 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-28 09:00:53,165 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 1 case distinctions, treesize of input 51 treesize of output 55 [2022-04-28 09:00:54,233 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 16 [2022-04-28 09:00:54,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {11735#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {11735#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {11735#true} is VALID [2022-04-28 09:00:54,377 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-28 09:00:54,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {11735#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {11779#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} is VALID [2022-04-28 09:00:54,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {11779#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} assume !!(~i~0 < ~nodecount~0); {11779#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} is VALID [2022-04-28 09:00:54,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {11779#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,382 INFO L290 TraceCheckUtils]: 10: Hoare triple {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,383 INFO L290 TraceCheckUtils]: 11: Hoare triple {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,384 INFO L290 TraceCheckUtils]: 12: Hoare triple {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,384 INFO L290 TraceCheckUtils]: 13: Hoare triple {11786#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {11799#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,385 INFO L290 TraceCheckUtils]: 14: Hoare triple {11799#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11803#(and (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) main_~x~0) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {11803#(and (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) main_~x~0) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11799#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,387 INFO L290 TraceCheckUtils]: 16: Hoare triple {11799#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11810#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (+ (- 1) main_~j~0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,388 INFO L290 TraceCheckUtils]: 17: Hoare triple {11810#(and (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|))) (= |main_~#distance~0.offset| 0) (= (+ (- 1) main_~j~0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ 8 |main_~#Dest~0.offset|)) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11814#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (<= (select (select |#memory_int| |main_~#Dest~0.base|) 4) main_~x~0) (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,390 INFO L290 TraceCheckUtils]: 18: Hoare triple {11814#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int)) (and (<= (select (select |#memory_int| |main_~#Dest~0.base|) 4) main_~x~0) (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,391 INFO L290 TraceCheckUtils]: 19: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,391 INFO L290 TraceCheckUtils]: 20: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,392 INFO L290 TraceCheckUtils]: 21: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,393 INFO L290 TraceCheckUtils]: 22: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,395 INFO L290 TraceCheckUtils]: 24: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,396 INFO L290 TraceCheckUtils]: 25: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,397 INFO L290 TraceCheckUtils]: 26: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,398 INFO L290 TraceCheckUtils]: 27: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,399 INFO L290 TraceCheckUtils]: 28: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,400 INFO L290 TraceCheckUtils]: 29: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,401 INFO L290 TraceCheckUtils]: 30: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~edgecount~0); {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,402 INFO L290 TraceCheckUtils]: 31: Hoare triple {11818#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {11858#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:00:54,402 INFO L290 TraceCheckUtils]: 32: Hoare triple {11858#(and (exists ((|main_~#Dest~0.base| Int)) (and (= (select (select |#memory_int| |main_~#Dest~0.base|) 8) 4) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (<= 1 (select (select |#memory_int| |main_~#Dest~0.base|) 0)) (<= 3 (select (select |#memory_int| |main_~#Dest~0.base|) 4)))) (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11862#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:00:54,403 INFO L272 TraceCheckUtils]: 33: Hoare triple {11862#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:00:54,403 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:00:54,404 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-28 09:00:54,404 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-28 09:00:54,404 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 09:00:54,404 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:00:56,744 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_main_~x~0_18 Int)) (or (forall ((v_ArrVal_434 Int)) (<= 0 (select (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ (* v_main_~x~0_18 4) |c_main_~#distance~0.offset|) v_ArrVal_434) |c_main_~#distance~0.offset|))) (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) (+ (* c_main_~j~0 4) |c_main_~#Dest~0.offset|)) v_main_~x~0_18)))) is different from false [2022-04-28 09:00:57,228 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_434 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ (* v_main_~x~0_18 4) |c_main_~#distance~0.offset|) v_ArrVal_434) |c_main_~#distance~0.offset|)) (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) (+ (* c_main_~j~0 4) 4 |c_main_~#Dest~0.offset|)) v_main_~x~0_18)))) is different from false [2022-04-28 09:01:22,120 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_main_~x~0_19 Int)) (or (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) (+ (* c_main_~j~0 4) |c_main_~#Dest~0.offset|)) v_main_~x~0_19)) (forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_18 Int)) (let ((.cse0 (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ |c_main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431))) (or (<= 0 (select (store .cse0 (+ (* v_main_~x~0_18 4) |c_main_~#distance~0.offset|) v_ArrVal_434) |c_main_~#distance~0.offset|)) (not (<= (select (select (store |c_#memory_int| |c_main_~#distance~0.base| .cse0) |c_main_~#Dest~0.base|) (+ (* c_main_~j~0 4) 4 |c_main_~#Dest~0.offset|)) v_main_~x~0_18))))))) is different from false [2022-04-28 09:01:23,468 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (let ((.cse0 (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ |c_main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431))) (or (<= 0 (select (store .cse0 (+ (* v_main_~x~0_18 4) |c_main_~#distance~0.offset|) v_ArrVal_434) |c_main_~#distance~0.offset|)) (not (<= (select (select (store |c_#memory_int| |c_main_~#distance~0.base| .cse0) |c_main_~#Dest~0.base|) (+ 4 |c_main_~#Dest~0.offset|)) v_main_~x~0_18)) (not (<= (select (select |c_#memory_int| |c_main_~#Dest~0.base|) |c_main_~#Dest~0.offset|) v_main_~x~0_19))))) is different from false [2022-04-28 09:01:26,642 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_ArrVal_429 Int) (v_main_~x~0_18 Int)) (let ((.cse0 (store (select |c_#memory_int| |c_main_~#distance~0.base|) (+ (* c_main_~i~0 4) |c_main_~#distance~0.offset|) v_ArrVal_429))) (let ((.cse1 (store .cse0 (+ |c_main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431))) (or (not (<= 0 v_ArrVal_429)) (not (<= (select (select (store |c_#memory_int| |c_main_~#distance~0.base| .cse0) |c_main_~#Dest~0.base|) |c_main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |c_#memory_int| |c_main_~#distance~0.base| .cse1) |c_main_~#Dest~0.base|) (+ 4 |c_main_~#Dest~0.offset|)) v_main_~x~0_18)) (<= 0 (select (store .cse1 (+ (* v_main_~x~0_18 4) |c_main_~#distance~0.offset|) v_ArrVal_434) |c_main_~#distance~0.offset|)))))) is different from false [2022-04-28 09:01:27,756 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-28 09:01:27,756 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-28 09:01:27,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:01:27,757 INFO L272 TraceCheckUtils]: 33: Hoare triple {11862#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:01:27,757 INFO L290 TraceCheckUtils]: 32: Hoare triple {11889#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11862#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:01:27,758 INFO L290 TraceCheckUtils]: 31: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {11889#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:27,758 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~edgecount~0); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,758 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,759 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,759 INFO L290 TraceCheckUtils]: 27: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,760 INFO L290 TraceCheckUtils]: 26: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,760 INFO L290 TraceCheckUtils]: 24: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,761 INFO L290 TraceCheckUtils]: 22: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~nodecount~0); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,761 INFO L290 TraceCheckUtils]: 21: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,761 INFO L290 TraceCheckUtils]: 20: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~j~0 < ~edgecount~0); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,762 INFO L290 TraceCheckUtils]: 19: Hoare triple {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,762 INFO L290 TraceCheckUtils]: 18: Hoare triple {11933#(forall ((v_ArrVal_434 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_434) |main_~#distance~0.offset|)))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11893#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:27,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {11937#(forall ((v_main_~x~0_18 Int)) (or (forall ((v_ArrVal_434 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|))) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_18))))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11933#(forall ((v_ArrVal_434 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_434) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:27,765 INFO L290 TraceCheckUtils]: 16: Hoare triple {11941#(forall ((v_ArrVal_434 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {11937#(forall ((v_main_~x~0_18 Int)) (or (forall ((v_ArrVal_434 Int)) (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|))) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,766 INFO L290 TraceCheckUtils]: 15: Hoare triple {11945#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_431)) |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|))))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {11941#(forall ((v_ArrVal_434 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,767 INFO L290 TraceCheckUtils]: 14: Hoare triple {11949#(forall ((v_main_~x~0_19 Int)) (or (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_19)) (forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {11945#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_431)) |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18)) (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|))))} is VALID [2022-04-28 09:01:27,772 INFO L290 TraceCheckUtils]: 13: Hoare triple {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {11949#(forall ((v_main_~x~0_19 Int)) (or (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) v_main_~x~0_19)) (forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ (* main_~j~0 4) 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))))} is VALID [2022-04-28 09:01:27,773 INFO L290 TraceCheckUtils]: 12: Hoare triple {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} ~i~0 := 0; {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,773 INFO L290 TraceCheckUtils]: 11: Hoare triple {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} assume !(~i~0 < ~nodecount~0); {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,774 INFO L290 TraceCheckUtils]: 10: Hoare triple {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {11966#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_ArrVal_429 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (<= 0 (select (store (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= 0 v_ArrVal_429)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {11953#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_main_~x~0_18 Int)) (or (<= 0 (select (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,777 INFO L290 TraceCheckUtils]: 8: Hoare triple {11966#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_ArrVal_429 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (<= 0 (select (store (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= 0 v_ArrVal_429)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} assume !!(~i~0 < ~nodecount~0); {11966#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_ArrVal_429 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (<= 0 (select (store (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= 0 v_ArrVal_429)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,780 INFO L290 TraceCheckUtils]: 7: Hoare triple {11735#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {11966#(forall ((v_ArrVal_434 Int) (v_ArrVal_431 Int) (v_main_~x~0_19 Int) (v_ArrVal_429 Int) (v_main_~x~0_18 Int)) (or (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429)) |main_~#Dest~0.base|) |main_~#Dest~0.offset|) v_main_~x~0_19)) (<= 0 (select (store (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431) (+ |main_~#distance~0.offset| (* v_main_~x~0_18 4)) v_ArrVal_434) |main_~#distance~0.offset|)) (not (<= 0 v_ArrVal_429)) (not (<= (select (select (store |#memory_int| |main_~#distance~0.base| (store (store (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)) v_ArrVal_429) (+ |main_~#distance~0.offset| (* v_main_~x~0_19 4)) v_ArrVal_431)) |main_~#Dest~0.base|) (+ 4 |main_~#Dest~0.offset|)) v_main_~x~0_18))))} is VALID [2022-04-28 09:01:27,780 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-28 09:01:27,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {11735#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {11735#true} is VALID [2022-04-28 09:01:27,783 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-28 09:01:27,786 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-28 09:01:27,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-28 09:01:27,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {11735#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {11735#true} is VALID [2022-04-28 09:01:27,786 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-28 09:01:27,786 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 6 not checked. [2022-04-28 09:01:27,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [669242375] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:01:27,787 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:01:27,787 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 14] total 37 [2022-04-28 09:01:27,787 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:01:27,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1425742467] [2022-04-28 09:01:27,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1425742467] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:27,787 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:27,787 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 09:01:27,787 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1509351092] [2022-04-28 09:01:27,787 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:01:27,788 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:27,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:01:27,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:27,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:27,824 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 09:01:27,824 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:27,824 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 09:01:27,825 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=844, Unknown=32, NotChecked=320, Total=1332 [2022-04-28 09:01:27,825 INFO L87 Difference]: Start difference. First operand 154 states and 195 transitions. Second operand has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:37,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:37,757 INFO L93 Difference]: Finished difference Result 187 states and 232 transitions. [2022-04-28 09:01:37,757 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 09:01:37,757 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:37,757 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:01:37,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:37,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-28 09:01:37,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:37,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-28 09:01:37,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 89 transitions. [2022-04-28 09:01:37,848 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:37,850 INFO L225 Difference]: With dead ends: 187 [2022-04-28 09:01:37,850 INFO L226 Difference]: Without dead ends: 164 [2022-04-28 09:01:37,851 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 55 SyntacticMatches, 2 SemanticMatches, 47 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 425 ImplicationChecksByTransitivity, 38.2s TimeCoverageRelationStatistics Valid=276, Invalid=1594, Unknown=42, NotChecked=440, Total=2352 [2022-04-28 09:01:37,851 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 88 mSDsluCounter, 41 mSDsCounter, 0 mSdLazyCounter, 479 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 538 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 479 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 09:01:37,852 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [89 Valid, 75 Invalid, 538 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 479 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 09:01:37,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-28 09:01:38,382 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 157. [2022-04-28 09:01:38,382 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:01:38,382 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:38,383 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:38,383 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:38,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:38,386 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-28 09:01:38,387 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-28 09:01:38,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:38,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:38,387 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 164 states. [2022-04-28 09:01:38,388 INFO L87 Difference]: Start difference. First operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 164 states. [2022-04-28 09:01:38,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:38,391 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-28 09:01:38,391 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-28 09:01:38,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:38,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:38,391 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:01:38,392 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:01:38,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 150 states have internal predecessors, (191), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:38,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 199 transitions. [2022-04-28 09:01:38,396 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 199 transitions. Word has length 37 [2022-04-28 09:01:38,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:01:38,396 INFO L495 AbstractCegarLoop]: Abstraction has 157 states and 199 transitions. [2022-04-28 09:01:38,396 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.0625) internal successors, (33), 15 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:38,396 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 199 transitions. [2022-04-28 09:01:38,742 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 199 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:38,742 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 199 transitions. [2022-04-28 09:01:38,742 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 09:01:38,742 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:01:38,743 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:01:38,762 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 09:01:38,955 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 09:01:38,956 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:01:38,956 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:01:38,956 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 1 times [2022-04-28 09:01:38,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:38,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [835785302] [2022-04-28 09:01:38,959 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:01:38,959 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:01:38,959 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 2 times [2022-04-28 09:01:38,959 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:01:38,959 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [983125168] [2022-04-28 09:01:38,959 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:01:38,960 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:01:38,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:39,045 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:01:39,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:39,049 INFO L290 TraceCheckUtils]: 0: Hoare triple {13044#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {13036#true} is VALID [2022-04-28 09:01:39,049 INFO L290 TraceCheckUtils]: 1: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-28 09:01:39,049 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L272 TraceCheckUtils]: 0: Hoare triple {13036#true} call ULTIMATE.init(); {13044#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 1: Hoare triple {13044#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 2: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L272 TraceCheckUtils]: 4: Hoare triple {13036#true} call #t~ret22 := main(); {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 5: Hoare triple {13036#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 6: Hoare triple {13036#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 7: Hoare triple {13036#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 8: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 9: Hoare triple {13036#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {13036#true} is VALID [2022-04-28 09:01:39,050 INFO L290 TraceCheckUtils]: 10: Hoare triple {13036#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 11: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 12: Hoare triple {13036#true} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 13: Hoare triple {13036#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 14: Hoare triple {13036#true} assume !(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 15: Hoare triple {13036#true} ~i~0 := 0; {13036#true} is VALID [2022-04-28 09:01:39,051 INFO L290 TraceCheckUtils]: 16: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {13041#(= main_~j~0 0)} is VALID [2022-04-28 09:01:39,052 INFO L290 TraceCheckUtils]: 17: Hoare triple {13041#(= main_~j~0 0)} assume !(~j~0 < ~edgecount~0); {13042#(<= main_~edgecount~0 0)} is VALID [2022-04-28 09:01:39,052 INFO L290 TraceCheckUtils]: 18: Hoare triple {13042#(<= main_~edgecount~0 0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {13042#(<= main_~edgecount~0 0)} is VALID [2022-04-28 09:01:39,052 INFO L290 TraceCheckUtils]: 19: Hoare triple {13042#(<= main_~edgecount~0 0)} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {13043#(and (= main_~j~0 0) (<= main_~edgecount~0 0))} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {13043#(and (= main_~j~0 0) (<= main_~edgecount~0 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 21: Hoare triple {13037#false} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 22: Hoare triple {13037#false} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 23: Hoare triple {13037#false} assume !(~j~0 < ~edgecount~0); {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 24: Hoare triple {13037#false} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 25: Hoare triple {13037#false} assume !(~i~0 < ~nodecount~0); {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 26: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 27: Hoare triple {13037#false} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {13037#false} is VALID [2022-04-28 09:01:39,053 INFO L290 TraceCheckUtils]: 28: Hoare triple {13037#false} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 29: Hoare triple {13037#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 30: Hoare triple {13037#false} assume !(~i~0 < ~edgecount~0); {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 31: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 32: Hoare triple {13037#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L272 TraceCheckUtils]: 33: Hoare triple {13037#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 34: Hoare triple {13037#false} ~cond := #in~cond; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 35: Hoare triple {13037#false} assume 0 == ~cond; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L290 TraceCheckUtils]: 36: Hoare triple {13037#false} assume !false; {13037#false} is VALID [2022-04-28 09:01:39,054 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 09:01:39,054 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:01:39,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [983125168] [2022-04-28 09:01:39,055 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [983125168] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:39,055 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:39,055 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 09:01:39,055 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:01:39,055 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [835785302] [2022-04-28 09:01:39,055 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [835785302] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:39,055 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:39,055 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 09:01:39,055 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1593293114] [2022-04-28 09:01:39,055 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:01:39,057 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:39,057 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:01:39,057 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:39,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:39,081 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 09:01:39,081 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:39,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 09:01:39,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 09:01:39,082 INFO L87 Difference]: Start difference. First operand 157 states and 199 transitions. Second operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:39,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:39,968 INFO L93 Difference]: Finished difference Result 247 states and 314 transitions. [2022-04-28 09:01:39,968 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 09:01:39,968 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:39,968 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:01:39,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:39,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-28 09:01:39,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:39,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-28 09:01:39,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 83 transitions. [2022-04-28 09:01:40,047 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:40,050 INFO L225 Difference]: With dead ends: 247 [2022-04-28 09:01:40,050 INFO L226 Difference]: Without dead ends: 177 [2022-04-28 09:01:40,050 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-04-28 09:01:40,051 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 71 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 83 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 09:01:40,051 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 44 Invalid, 83 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 09:01:40,052 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-28 09:01:40,644 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 157. [2022-04-28 09:01:40,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:01:40,645 INFO L82 GeneralOperation]: Start isEquivalent. First operand 177 states. Second operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:40,645 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:40,646 INFO L87 Difference]: Start difference. First operand 177 states. Second operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:40,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:40,649 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-28 09:01:40,649 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-28 09:01:40,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:40,649 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:40,650 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 177 states. [2022-04-28 09:01:40,650 INFO L87 Difference]: Start difference. First operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 177 states. [2022-04-28 09:01:40,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:40,653 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-28 09:01:40,653 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-28 09:01:40,654 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:40,654 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:40,654 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:01:40,654 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:01:40,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 148 states have (on average 1.2702702702702702) internal successors, (188), 150 states have internal predecessors, (188), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:40,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 196 transitions. [2022-04-28 09:01:40,657 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 196 transitions. Word has length 37 [2022-04-28 09:01:40,657 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:01:40,658 INFO L495 AbstractCegarLoop]: Abstraction has 157 states and 196 transitions. [2022-04-28 09:01:40,658 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:40,658 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 196 transitions. [2022-04-28 09:01:41,050 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:41,051 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 196 transitions. [2022-04-28 09:01:41,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 09:01:41,051 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:01:41,051 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:01:41,051 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-04-28 09:01:41,052 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:01:41,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:01:41,052 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 9 times [2022-04-28 09:01:41,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:41,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1650053685] [2022-04-28 09:01:41,055 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:01:41,055 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:01:41,056 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 10 times [2022-04-28 09:01:41,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:01:41,056 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1815080033] [2022-04-28 09:01:41,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:01:41,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:01:41,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:41,250 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:01:41,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:41,254 INFO L290 TraceCheckUtils]: 0: Hoare triple {14227#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {14213#true} is VALID [2022-04-28 09:01:41,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-28 09:01:41,254 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-28 09:01:41,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14227#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:01:41,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {14227#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {14213#true} is VALID [2022-04-28 09:01:41,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-28 09:01:41,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-28 09:01:41,255 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-28 09:01:41,255 INFO L290 TraceCheckUtils]: 5: Hoare triple {14213#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {14213#true} is VALID [2022-04-28 09:01:41,255 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-28 09:01:41,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {14213#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {14218#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:41,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {14218#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {14218#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:41,258 INFO L290 TraceCheckUtils]: 9: Hoare triple {14218#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14219#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:41,259 INFO L290 TraceCheckUtils]: 10: Hoare triple {14219#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} is VALID [2022-04-28 09:01:41,259 INFO L290 TraceCheckUtils]: 11: Hoare triple {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} assume !!(~i~0 < ~nodecount~0); {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} is VALID [2022-04-28 09:01:41,260 INFO L290 TraceCheckUtils]: 12: Hoare triple {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} is VALID [2022-04-28 09:01:41,260 INFO L290 TraceCheckUtils]: 13: Hoare triple {14220#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (<= (+ (div (* (- 1) |main_~#distance~0.offset|) 4) 1) main_~i~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14221#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,261 INFO L290 TraceCheckUtils]: 14: Hoare triple {14221#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0); {14221#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,262 INFO L290 TraceCheckUtils]: 15: Hoare triple {14221#(and (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,262 INFO L290 TraceCheckUtils]: 16: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,262 INFO L290 TraceCheckUtils]: 17: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,263 INFO L290 TraceCheckUtils]: 18: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,263 INFO L290 TraceCheckUtils]: 19: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,264 INFO L290 TraceCheckUtils]: 20: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,264 INFO L290 TraceCheckUtils]: 21: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,265 INFO L290 TraceCheckUtils]: 24: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,266 INFO L290 TraceCheckUtils]: 25: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,266 INFO L290 TraceCheckUtils]: 26: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~j~0 < ~edgecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,267 INFO L290 TraceCheckUtils]: 27: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,267 INFO L290 TraceCheckUtils]: 28: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~nodecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,268 INFO L290 TraceCheckUtils]: 29: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,268 INFO L290 TraceCheckUtils]: 30: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:01:41,269 INFO L290 TraceCheckUtils]: 31: Hoare triple {14222#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {14223#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0))} is VALID [2022-04-28 09:01:41,269 INFO L290 TraceCheckUtils]: 32: Hoare triple {14223#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14224#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:01:41,270 INFO L272 TraceCheckUtils]: 33: Hoare triple {14224#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {14225#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:01:41,270 INFO L290 TraceCheckUtils]: 34: Hoare triple {14225#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {14226#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:01:41,271 INFO L290 TraceCheckUtils]: 35: Hoare triple {14226#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {14214#false} is VALID [2022-04-28 09:01:41,271 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-28 09:01:41,271 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 09:01:41,271 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:01:41,271 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1815080033] [2022-04-28 09:01:41,271 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1815080033] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:01:41,271 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1792357931] [2022-04-28 09:01:41,272 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 09:01:41,272 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:01:41,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:01:41,273 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:01:41,299 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 09:01:41,351 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 09:01:41,351 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:01:41,352 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 09:01:41,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:41,365 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:01:41,408 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2022-04-28 09:01:41,463 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-28 09:01:41,463 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 27 [2022-04-28 09:01:41,529 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-28 09:01:41,530 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 27 [2022-04-28 09:01:42,912 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-28 09:01:42,913 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 20 treesize of output 10 [2022-04-28 09:01:43,016 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {14213#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {14213#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 7: Hoare triple {14213#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {14213#true} is VALID [2022-04-28 09:01:43,017 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-28 09:01:43,018 INFO L290 TraceCheckUtils]: 9: Hoare triple {14213#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14258#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,018 INFO L290 TraceCheckUtils]: 10: Hoare triple {14258#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,018 INFO L290 TraceCheckUtils]: 11: Hoare triple {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0); {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,019 INFO L290 TraceCheckUtils]: 12: Hoare triple {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,020 INFO L290 TraceCheckUtils]: 13: Hoare triple {14262#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14272#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,020 INFO L290 TraceCheckUtils]: 14: Hoare triple {14272#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0); {14276#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:01:43,020 INFO L290 TraceCheckUtils]: 15: Hoare triple {14276#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14276#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:01:43,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {14276#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (- 8) (* main_~i~0 4)))) (< main_~i~0 main_~nodecount~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14283#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< v_main_~i~0_136 main_~nodecount~0) (<= main_~i~0 (+ v_main_~i~0_136 1))))} is VALID [2022-04-28 09:01:43,022 INFO L290 TraceCheckUtils]: 17: Hoare triple {14283#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< v_main_~i~0_136 main_~nodecount~0) (<= main_~i~0 (+ v_main_~i~0_136 1))))} assume !(~i~0 < ~nodecount~0); {14287#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0)))} is VALID [2022-04-28 09:01:43,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {14287#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0)))} ~i~0 := 0; {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:43,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:43,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} assume !(~j~0 < ~edgecount~0); {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:43,030 INFO L290 TraceCheckUtils]: 21: Hoare triple {14291#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= main_~i~0 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} is VALID [2022-04-28 09:01:43,031 INFO L290 TraceCheckUtils]: 22: Hoare triple {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} is VALID [2022-04-28 09:01:43,031 INFO L290 TraceCheckUtils]: 23: Hoare triple {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} assume !(~j~0 < ~edgecount~0); {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} is VALID [2022-04-28 09:01:43,032 INFO L290 TraceCheckUtils]: 24: Hoare triple {14301#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (= (+ (- 1) main_~i~0) 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14311#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))))} is VALID [2022-04-28 09:01:43,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {14311#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14315#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:01:43,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {14315#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (< main_~i~0 main_~nodecount~0))} assume !(~j~0 < ~edgecount~0); {14315#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (< main_~i~0 main_~nodecount~0))} is VALID [2022-04-28 09:01:43,034 INFO L290 TraceCheckUtils]: 27: Hoare triple {14315#(and (= main_~i~0 2) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (< main_~i~0 main_~nodecount~0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14322#(and (< 2 main_~nodecount~0) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (<= main_~i~0 3))} is VALID [2022-04-28 09:01:43,035 INFO L290 TraceCheckUtils]: 28: Hoare triple {14322#(and (< 2 main_~nodecount~0) (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (<= main_~nodecount~0 (+ v_main_~i~0_136 1)) (< v_main_~i~0_136 main_~nodecount~0))) (<= main_~i~0 3))} assume !(~i~0 < ~nodecount~0); {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} is VALID [2022-04-28 09:01:43,036 INFO L290 TraceCheckUtils]: 29: Hoare triple {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} ~i~0 := 0; {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} is VALID [2022-04-28 09:01:43,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} assume !(~i~0 < ~edgecount~0); {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} is VALID [2022-04-28 09:01:43,037 INFO L290 TraceCheckUtils]: 31: Hoare triple {14326#(exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3)))} ~i~0 := 0; {14336#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:43,037 INFO L290 TraceCheckUtils]: 32: Hoare triple {14336#(and (exists ((v_main_~i~0_136 Int)) (and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (* 4 v_main_~i~0_136) |main_~#distance~0.offset| (- 8)))) (< 1 v_main_~i~0_136) (< v_main_~i~0_136 3))) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14340#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:01:43,038 INFO L272 TraceCheckUtils]: 33: Hoare triple {14340#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:01:43,038 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:01:43,038 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-28 09:01:43,038 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-28 09:01:43,039 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 5 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:01:43,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:01:43,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-28 09:01:43,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-28 09:01:43,870 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:01:43,871 INFO L272 TraceCheckUtils]: 33: Hoare triple {14340#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:01:43,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {14258#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14340#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:01:43,871 INFO L290 TraceCheckUtils]: 31: Hoare triple {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {14258#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:43,872 INFO L290 TraceCheckUtils]: 30: Hoare triple {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} assume !(~i~0 < ~edgecount~0); {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:43,872 INFO L290 TraceCheckUtils]: 29: Hoare triple {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} ~i~0 := 0; {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:43,872 INFO L290 TraceCheckUtils]: 28: Hoare triple {14380#(or (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {14370#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|))} is VALID [2022-04-28 09:01:43,873 INFO L290 TraceCheckUtils]: 27: Hoare triple {14384#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14380#(or (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,873 INFO L290 TraceCheckUtils]: 26: Hoare triple {14384#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {14384#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,874 INFO L290 TraceCheckUtils]: 25: Hoare triple {14391#(or (< (+ main_~i~0 1) main_~nodecount~0) (not (< main_~i~0 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14384#(or (< (+ main_~i~0 1) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,874 INFO L290 TraceCheckUtils]: 24: Hoare triple {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14391#(or (< (+ main_~i~0 1) main_~nodecount~0) (not (< main_~i~0 main_~nodecount~0)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,875 INFO L290 TraceCheckUtils]: 23: Hoare triple {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,875 INFO L290 TraceCheckUtils]: 22: Hoare triple {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,876 INFO L290 TraceCheckUtils]: 21: Hoare triple {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {14395#(or (not (< (+ main_~i~0 1) main_~nodecount~0)) (< (+ main_~i~0 2) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~j~0 < ~edgecount~0); {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,876 INFO L290 TraceCheckUtils]: 19: Hoare triple {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {14415#(or (not (< 2 main_~nodecount~0)) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} ~i~0 := 0; {14405#(or (not (< (+ main_~i~0 2) main_~nodecount~0)) (< (+ main_~i~0 3) main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,877 INFO L290 TraceCheckUtils]: 17: Hoare triple {14419#(or (not (< 2 main_~nodecount~0)) (< 3 main_~nodecount~0) (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 < ~nodecount~0); {14415#(or (not (< 2 main_~nodecount~0)) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,877 INFO L290 TraceCheckUtils]: 16: Hoare triple {14423#(or (not (< 2 main_~nodecount~0)) (< (+ main_~i~0 1) main_~nodecount~0) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14419#(or (not (< 2 main_~nodecount~0)) (< 3 main_~nodecount~0) (< main_~i~0 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,878 INFO L290 TraceCheckUtils]: 15: Hoare triple {14423#(or (not (< 2 main_~nodecount~0)) (< (+ main_~i~0 1) main_~nodecount~0) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14423#(or (not (< 2 main_~nodecount~0)) (< (+ main_~i~0 1) main_~nodecount~0) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {14430#(or (<= main_~i~0 1) (<= 3 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0); {14423#(or (not (< 2 main_~nodecount~0)) (< (+ main_~i~0 1) main_~nodecount~0) (< 3 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,879 INFO L290 TraceCheckUtils]: 13: Hoare triple {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14430#(or (<= main_~i~0 1) (<= 3 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} assume !!(~i~0 < ~nodecount~0); {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,880 INFO L290 TraceCheckUtils]: 10: Hoare triple {14444#(or (<= (+ main_~i~0 1) 0) (<= 1 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {14434#(or (<= 2 main_~i~0) (<= main_~i~0 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 9: Hoare triple {14213#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {14444#(or (<= (+ main_~i~0 1) 0) (<= 1 main_~i~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) |main_~#distance~0.offset|)))} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 7: Hoare triple {14213#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 5: Hoare triple {14213#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {14213#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {14213#true} is VALID [2022-04-28 09:01:43,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-28 09:01:43,882 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 5 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:01:43,882 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1792357931] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:01:43,882 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:01:43,882 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 18, 18] total 40 [2022-04-28 09:01:43,882 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:01:43,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1650053685] [2022-04-28 09:01:43,882 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1650053685] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:43,883 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:43,883 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 09:01:43,883 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1428121789] [2022-04-28 09:01:43,883 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:01:43,883 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:43,883 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:01:43,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:43,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:43,907 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 09:01:43,907 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:43,907 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 09:01:43,908 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=244, Invalid=1316, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 09:01:43,908 INFO L87 Difference]: Start difference. First operand 157 states and 196 transitions. Second operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:45,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:45,562 INFO L93 Difference]: Finished difference Result 237 states and 298 transitions. [2022-04-28 09:01:45,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 09:01:45,563 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-28 09:01:45,563 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:01:45,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:45,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-28 09:01:45,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:45,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-28 09:01:45,565 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 87 transitions. [2022-04-28 09:01:45,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:45,666 INFO L225 Difference]: With dead ends: 237 [2022-04-28 09:01:45,666 INFO L226 Difference]: Without dead ends: 235 [2022-04-28 09:01:45,668 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 46 SyntacticMatches, 3 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 578 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=335, Invalid=1827, Unknown=0, NotChecked=0, Total=2162 [2022-04-28 09:01:45,669 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 113 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 344 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 114 SdHoareTripleChecker+Valid, 62 SdHoareTripleChecker+Invalid, 390 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 344 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 09:01:45,669 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [114 Valid, 62 Invalid, 390 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 344 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 09:01:45,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 235 states. [2022-04-28 09:01:46,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 235 to 162. [2022-04-28 09:01:46,349 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:01:46,349 INFO L82 GeneralOperation]: Start isEquivalent. First operand 235 states. Second operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:46,349 INFO L74 IsIncluded]: Start isIncluded. First operand 235 states. Second operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:46,350 INFO L87 Difference]: Start difference. First operand 235 states. Second operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:46,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:46,354 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-28 09:01:46,354 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-28 09:01:46,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:46,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:46,355 INFO L74 IsIncluded]: Start isIncluded. First operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 235 states. [2022-04-28 09:01:46,356 INFO L87 Difference]: Start difference. First operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 235 states. [2022-04-28 09:01:46,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:46,360 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-28 09:01:46,360 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-28 09:01:46,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:46,361 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:46,361 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:01:46,361 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:01:46,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 162 states, 153 states have (on average 1.2745098039215685) internal successors, (195), 155 states have internal predecessors, (195), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 09:01:46,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 203 transitions. [2022-04-28 09:01:46,364 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 203 transitions. Word has length 37 [2022-04-28 09:01:46,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:01:46,364 INFO L495 AbstractCegarLoop]: Abstraction has 162 states and 203 transitions. [2022-04-28 09:01:46,364 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:46,364 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 162 states and 203 transitions. [2022-04-28 09:01:46,832 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 203 edges. 203 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:46,832 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 203 transitions. [2022-04-28 09:01:46,832 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 09:01:46,832 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:01:46,833 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:01:46,858 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 09:01:47,033 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-28 09:01:47,033 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:01:47,033 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:01:47,034 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 1 times [2022-04-28 09:01:47,034 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:47,034 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [83570675] [2022-04-28 09:01:47,037 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:01:47,037 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:01:47,037 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 2 times [2022-04-28 09:01:47,037 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:01:47,037 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404410129] [2022-04-28 09:01:47,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:01:47,037 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:01:47,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:47,200 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:01:47,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:47,219 INFO L290 TraceCheckUtils]: 0: Hoare triple {15778#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,219 INFO L290 TraceCheckUtils]: 1: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,220 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,220 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-28 09:01:47,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:47,224 INFO L290 TraceCheckUtils]: 0: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-28 09:01:47,224 INFO L290 TraceCheckUtils]: 1: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-28 09:01:47,224 INFO L290 TraceCheckUtils]: 2: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-28 09:01:47,225 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15759#true} {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} #121#return; {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,226 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15778#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:01:47,226 INFO L290 TraceCheckUtils]: 1: Hoare triple {15778#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,229 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,230 INFO L290 TraceCheckUtils]: 6: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:47,233 INFO L290 TraceCheckUtils]: 7: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,233 INFO L290 TraceCheckUtils]: 8: Hoare triple {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,234 INFO L290 TraceCheckUtils]: 9: Hoare triple {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,234 INFO L290 TraceCheckUtils]: 10: Hoare triple {15765#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15766#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} is VALID [2022-04-28 09:01:47,235 INFO L290 TraceCheckUtils]: 11: Hoare triple {15766#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} assume !!(~i~0 < ~nodecount~0); {15766#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} is VALID [2022-04-28 09:01:47,235 INFO L290 TraceCheckUtils]: 12: Hoare triple {15766#(and (<= 899 ~INFINITY~0) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15767#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} is VALID [2022-04-28 09:01:47,236 INFO L290 TraceCheckUtils]: 13: Hoare triple {15767#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 4))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,236 INFO L290 TraceCheckUtils]: 14: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !(~i~0 < ~nodecount~0); {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,237 INFO L290 TraceCheckUtils]: 15: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} ~i~0 := 0; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,237 INFO L290 TraceCheckUtils]: 16: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,238 INFO L290 TraceCheckUtils]: 17: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !(~j~0 < ~edgecount~0); {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,238 INFO L290 TraceCheckUtils]: 18: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,238 INFO L290 TraceCheckUtils]: 19: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,239 INFO L290 TraceCheckUtils]: 20: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !(~j~0 < ~edgecount~0); {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,239 INFO L290 TraceCheckUtils]: 21: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,240 INFO L290 TraceCheckUtils]: 22: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !(~i~0 < ~nodecount~0); {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,240 INFO L290 TraceCheckUtils]: 23: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} ~i~0 := 0; {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,241 INFO L290 TraceCheckUtils]: 24: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} assume !(~i~0 < ~edgecount~0); {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} is VALID [2022-04-28 09:01:47,241 INFO L290 TraceCheckUtils]: 25: Hoare triple {15768#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)))} ~i~0 := 0; {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,242 INFO L290 TraceCheckUtils]: 26: Hoare triple {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,242 INFO L272 TraceCheckUtils]: 27: Hoare triple {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15759#true} is VALID [2022-04-28 09:01:47,242 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-28 09:01:47,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-28 09:01:47,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-28 09:01:47,243 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {15759#true} {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} #121#return; {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,243 INFO L290 TraceCheckUtils]: 32: Hoare triple {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} havoc #t~mem21; {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} is VALID [2022-04-28 09:01:47,244 INFO L290 TraceCheckUtils]: 33: Hoare triple {15769#(and (= |main_~#distance~0.offset| 0) (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) 4)) (= main_~i~0 0))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {15774#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0))} is VALID [2022-04-28 09:01:47,244 INFO L290 TraceCheckUtils]: 34: Hoare triple {15774#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15775#(<= 899 |main_#t~mem21|)} is VALID [2022-04-28 09:01:47,245 INFO L272 TraceCheckUtils]: 35: Hoare triple {15775#(<= 899 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15776#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:01:47,245 INFO L290 TraceCheckUtils]: 36: Hoare triple {15776#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {15777#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:01:47,245 INFO L290 TraceCheckUtils]: 37: Hoare triple {15777#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {15760#false} is VALID [2022-04-28 09:01:47,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-28 09:01:47,246 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 09:01:47,246 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:01:47,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [404410129] [2022-04-28 09:01:47,246 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [404410129] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:01:47,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1438812167] [2022-04-28 09:01:47,246 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:01:47,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:01:47,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:01:47,248 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:01:47,257 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 09:01:47,345 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:01:47,346 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:01:47,347 INFO L263 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 09:01:47,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:47,357 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:01:47,477 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-04-28 09:01:49,747 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-04-28 09:01:49,802 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-28 09:01:49,802 INFO L290 TraceCheckUtils]: 1: Hoare triple {15759#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,803 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,804 INFO L290 TraceCheckUtils]: 6: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-28 09:01:49,805 INFO L290 TraceCheckUtils]: 7: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,806 INFO L290 TraceCheckUtils]: 8: Hoare triple {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,806 INFO L290 TraceCheckUtils]: 10: Hoare triple {15803#(and (<= 899 ~INFINITY~0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15813#(and (<= 899 ~INFINITY~0) (= main_~i~0 1))} is VALID [2022-04-28 09:01:49,807 INFO L290 TraceCheckUtils]: 11: Hoare triple {15813#(and (<= 899 ~INFINITY~0) (= main_~i~0 1))} assume !!(~i~0 < ~nodecount~0); {15813#(and (<= 899 ~INFINITY~0) (= main_~i~0 1))} is VALID [2022-04-28 09:01:49,807 INFO L290 TraceCheckUtils]: 12: Hoare triple {15813#(and (<= 899 ~INFINITY~0) (= main_~i~0 1))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,808 INFO L290 TraceCheckUtils]: 13: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,808 INFO L290 TraceCheckUtils]: 14: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~nodecount~0); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,808 INFO L290 TraceCheckUtils]: 15: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,809 INFO L290 TraceCheckUtils]: 16: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,809 INFO L290 TraceCheckUtils]: 17: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~j~0 < ~edgecount~0); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,809 INFO L290 TraceCheckUtils]: 18: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,810 INFO L290 TraceCheckUtils]: 19: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,810 INFO L290 TraceCheckUtils]: 20: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~j~0 < ~edgecount~0); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,811 INFO L290 TraceCheckUtils]: 21: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~nodecount~0); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,811 INFO L290 TraceCheckUtils]: 23: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~edgecount~0); {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:49,812 INFO L290 TraceCheckUtils]: 25: Hoare triple {15820#(<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,812 INFO L290 TraceCheckUtils]: 26: Hoare triple {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,813 INFO L272 TraceCheckUtils]: 27: Hoare triple {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} is VALID [2022-04-28 09:01:49,813 INFO L290 TraceCheckUtils]: 28: Hoare triple {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} ~cond := #in~cond; {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} is VALID [2022-04-28 09:01:49,814 INFO L290 TraceCheckUtils]: 29: Hoare triple {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} assume !(0 == ~cond); {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} is VALID [2022-04-28 09:01:49,814 INFO L290 TraceCheckUtils]: 30: Hoare triple {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} assume true; {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} is VALID [2022-04-28 09:01:49,815 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {15867#(exists ((|v_main_~#distance~0.offset_BEFORE_CALL_1| Int) (|v_main_~#distance~0.base_BEFORE_CALL_1| Int)) (<= 899 (select (select |#memory_int| |v_main_~#distance~0.base_BEFORE_CALL_1|) (+ |v_main_~#distance~0.offset_BEFORE_CALL_1| 4))))} {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} #121#return; {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,815 INFO L290 TraceCheckUtils]: 32: Hoare triple {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} havoc #t~mem21; {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} is VALID [2022-04-28 09:01:49,815 INFO L290 TraceCheckUtils]: 33: Hoare triple {15860#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 0))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {15886#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 1))} is VALID [2022-04-28 09:01:49,816 INFO L290 TraceCheckUtils]: 34: Hoare triple {15886#(and (<= 899 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4))) (= main_~i~0 1))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15775#(<= 899 |main_#t~mem21|)} is VALID [2022-04-28 09:01:49,816 INFO L272 TraceCheckUtils]: 35: Hoare triple {15775#(<= 899 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:01:49,817 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:01:49,817 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-28 09:01:49,817 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-28 09:01:49,817 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 09:01:49,817 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:01:52,069 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 14 [2022-04-28 09:01:52,083 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 28 [2022-04-28 09:01:52,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-28 09:01:52,284 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-28 09:01:52,285 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:01:52,285 INFO L272 TraceCheckUtils]: 35: Hoare triple {15913#(<= 0 |main_#t~mem21|)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:01:52,286 INFO L290 TraceCheckUtils]: 34: Hoare triple {15917#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15913#(<= 0 |main_#t~mem21|)} is VALID [2022-04-28 09:01:52,286 INFO L290 TraceCheckUtils]: 33: Hoare triple {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} #t~post20 := ~i~0;~i~0 := 1 + #t~post20;havoc #t~post20; {15917#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))))} is VALID [2022-04-28 09:01:52,287 INFO L290 TraceCheckUtils]: 32: Hoare triple {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} havoc #t~mem21; {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} is VALID [2022-04-28 09:01:52,288 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {15759#true} {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} #121#return; {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} is VALID [2022-04-28 09:01:52,288 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-28 09:01:52,288 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-28 09:01:52,288 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-28 09:01:52,288 INFO L272 TraceCheckUtils]: 27: Hoare triple {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {15759#true} is VALID [2022-04-28 09:01:52,288 INFO L290 TraceCheckUtils]: 26: Hoare triple {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} is VALID [2022-04-28 09:01:52,289 INFO L290 TraceCheckUtils]: 25: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15921#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4))))} is VALID [2022-04-28 09:01:52,289 INFO L290 TraceCheckUtils]: 24: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~edgecount~0); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,290 INFO L290 TraceCheckUtils]: 22: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~nodecount~0); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,291 INFO L290 TraceCheckUtils]: 21: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,291 INFO L290 TraceCheckUtils]: 20: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~j~0 < ~edgecount~0); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,292 INFO L290 TraceCheckUtils]: 19: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,292 INFO L290 TraceCheckUtils]: 18: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,293 INFO L290 TraceCheckUtils]: 17: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~j~0 < ~edgecount~0); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,293 INFO L290 TraceCheckUtils]: 16: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,294 INFO L290 TraceCheckUtils]: 15: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} ~i~0 := 0; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,294 INFO L290 TraceCheckUtils]: 14: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} assume !(~i~0 < ~nodecount~0); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,294 INFO L290 TraceCheckUtils]: 13: Hoare triple {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,295 INFO L290 TraceCheckUtils]: 12: Hoare triple {15986#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15946#(<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| 4)))} is VALID [2022-04-28 09:01:52,296 INFO L290 TraceCheckUtils]: 11: Hoare triple {15986#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} assume !!(~i~0 < ~nodecount~0); {15986#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} is VALID [2022-04-28 09:01:52,296 INFO L290 TraceCheckUtils]: 10: Hoare triple {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {15986#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} is VALID [2022-04-28 09:01:52,297 INFO L290 TraceCheckUtils]: 9: Hoare triple {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} is VALID [2022-04-28 09:01:52,297 INFO L290 TraceCheckUtils]: 8: Hoare triple {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} assume !!(~i~0 < ~nodecount~0); {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} is VALID [2022-04-28 09:01:52,300 INFO L290 TraceCheckUtils]: 7: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {15993#(and (forall ((|main_~#distance~0.offset| Int)) (= (+ |main_~#distance~0.offset| 4) (+ |main_~#distance~0.offset| 4 (* main_~i~0 4)))) (<= 0 ~INFINITY~0))} is VALID [2022-04-28 09:01:52,300 INFO L290 TraceCheckUtils]: 6: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,301 INFO L272 TraceCheckUtils]: 4: Hoare triple {16003#(<= 0 ~INFINITY~0)} call #t~ret22 := main(); {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,301 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16003#(<= 0 ~INFINITY~0)} {15759#true} #123#return; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume true; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {15759#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-28 09:01:52,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-28 09:01:52,303 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 09:01:52,303 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1438812167] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:01:52,303 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:01:52,303 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 11] total 28 [2022-04-28 09:01:52,304 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:01:52,304 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [83570675] [2022-04-28 09:01:52,304 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [83570675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:52,304 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:52,304 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 09:01:52,304 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1115798673] [2022-04-28 09:01:52,304 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:01:52,305 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 39 [2022-04-28 09:01:52,305 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:01:52,305 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:01:52,339 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:52,339 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 09:01:52,339 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:52,340 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 09:01:52,340 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=654, Unknown=2, NotChecked=0, Total=756 [2022-04-28 09:01:52,340 INFO L87 Difference]: Start difference. First operand 162 states and 203 transitions. Second operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:01:54,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:54,772 INFO L93 Difference]: Finished difference Result 232 states and 291 transitions. [2022-04-28 09:01:54,772 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 09:01:54,773 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 39 [2022-04-28 09:01:54,773 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:01:54,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:01:54,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-28 09:01:54,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:01:54,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-28 09:01:54,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-28 09:01:54,895 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:54,898 INFO L225 Difference]: With dead ends: 232 [2022-04-28 09:01:54,898 INFO L226 Difference]: Without dead ends: 230 [2022-04-28 09:01:54,899 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 65 SyntacticMatches, 2 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 338 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=231, Invalid=1249, Unknown=2, NotChecked=0, Total=1482 [2022-04-28 09:01:54,899 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 243 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 485 mSolverCounterSat, 80 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 565 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 80 IncrementalHoareTripleChecker+Valid, 485 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 09:01:54,900 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 66 Invalid, 565 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [80 Valid, 485 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 09:01:54,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-28 09:01:55,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 170. [2022-04-28 09:01:55,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:01:55,695 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:01:55,695 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:01:55,695 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:01:55,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:55,700 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-28 09:01:55,700 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-28 09:01:55,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:55,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:55,701 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 230 states. [2022-04-28 09:01:55,701 INFO L87 Difference]: Start difference. First operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 230 states. [2022-04-28 09:01:55,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:01:55,705 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-28 09:01:55,705 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-28 09:01:55,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:01:55,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:01:55,706 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:01:55,706 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:01:55,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 159 states have (on average 1.2641509433962264) internal successors, (201), 161 states have internal predecessors, (201), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:01:55,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 211 transitions. [2022-04-28 09:01:55,709 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 211 transitions. Word has length 39 [2022-04-28 09:01:55,709 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:01:55,709 INFO L495 AbstractCegarLoop]: Abstraction has 170 states and 211 transitions. [2022-04-28 09:01:55,709 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 09:01:55,709 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 170 states and 211 transitions. [2022-04-28 09:01:56,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 211 edges. 211 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:56,238 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-28 09:01:56,239 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 09:01:56,239 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:01:56,239 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:01:56,265 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 09:01:56,439 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 09:01:56,440 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:01:56,440 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:01:56,440 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 7 times [2022-04-28 09:01:56,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:56,440 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1165294746] [2022-04-28 09:01:56,442 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:01:56,442 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:01:56,442 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 8 times [2022-04-28 09:01:56,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:01:56,442 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404848975] [2022-04-28 09:01:56,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:01:56,443 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:01:56,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:56,556 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:01:56,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:56,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {17326#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {17314#true} is VALID [2022-04-28 09:01:56,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-28 09:01:56,560 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-28 09:01:56,560 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17326#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:01:56,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {17326#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 5: Hoare triple {17314#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {17314#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {17314#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 10: Hoare triple {17314#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:56,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:56,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {17319#(= main_~j~0 0)} is VALID [2022-04-28 09:01:56,562 INFO L290 TraceCheckUtils]: 14: Hoare triple {17319#(= main_~j~0 0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17319#(= main_~j~0 0)} is VALID [2022-04-28 09:01:56,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {17319#(= main_~j~0 0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17319#(= main_~j~0 0)} is VALID [2022-04-28 09:01:56,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {17319#(= main_~j~0 0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {17320#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,564 INFO L290 TraceCheckUtils]: 18: Hoare triple {17320#(<= 1 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,564 INFO L290 TraceCheckUtils]: 19: Hoare triple {17320#(<= 1 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17321#(<= 2 main_~j~0)} is VALID [2022-04-28 09:01:56,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {17321#(<= 2 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,566 INFO L290 TraceCheckUtils]: 21: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,566 INFO L290 TraceCheckUtils]: 22: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,567 INFO L290 TraceCheckUtils]: 25: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,568 INFO L290 TraceCheckUtils]: 26: Hoare triple {17322#(<= 3 main_~edgecount~0)} ~i~0 := 0; {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,568 INFO L290 TraceCheckUtils]: 27: Hoare triple {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,569 INFO L290 TraceCheckUtils]: 29: Hoare triple {17323#(and (= main_~i~0 0) (<= 3 main_~edgecount~0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:56,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:56,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:56,570 INFO L290 TraceCheckUtils]: 32: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17325#(<= (+ main_~i~0 1) main_~edgecount~0)} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {17325#(<= (+ main_~i~0 1) main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 35: Hoare triple {17315#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L272 TraceCheckUtils]: 36: Hoare triple {17315#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-28 09:01:56,571 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-28 09:01:56,572 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 2 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:01:56,572 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:01:56,572 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [404848975] [2022-04-28 09:01:56,572 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [404848975] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:01:56,572 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [915395223] [2022-04-28 09:01:56,572 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 09:01:56,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:01:56,572 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:01:56,576 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:01:56,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 09:01:56,693 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 09:01:56,693 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:01:56,695 INFO L263 TraceCheckSpWp]: Trace formula consists of 357 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 09:01:56,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:01:56,711 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:01:56,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {17314#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 5: Hoare triple {17314#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {17314#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {17314#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 10: Hoare triple {17314#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:56,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:56,923 INFO L290 TraceCheckUtils]: 13: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:56,923 INFO L290 TraceCheckUtils]: 14: Hoare triple {17369#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:56,923 INFO L290 TraceCheckUtils]: 15: Hoare triple {17369#(<= 0 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:56,924 INFO L290 TraceCheckUtils]: 16: Hoare triple {17369#(<= 0 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,924 INFO L290 TraceCheckUtils]: 17: Hoare triple {17320#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,925 INFO L290 TraceCheckUtils]: 18: Hoare triple {17320#(<= 1 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:56,925 INFO L290 TraceCheckUtils]: 19: Hoare triple {17320#(<= 1 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17321#(<= 2 main_~j~0)} is VALID [2022-04-28 09:01:56,926 INFO L290 TraceCheckUtils]: 20: Hoare triple {17321#(<= 2 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,926 INFO L290 TraceCheckUtils]: 21: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,926 INFO L290 TraceCheckUtils]: 22: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,927 INFO L290 TraceCheckUtils]: 23: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,927 INFO L290 TraceCheckUtils]: 24: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,927 INFO L290 TraceCheckUtils]: 25: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:56,928 INFO L290 TraceCheckUtils]: 26: Hoare triple {17322#(<= 3 main_~edgecount~0)} ~i~0 := 0; {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,928 INFO L290 TraceCheckUtils]: 27: Hoare triple {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,929 INFO L290 TraceCheckUtils]: 28: Hoare triple {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,929 INFO L290 TraceCheckUtils]: 29: Hoare triple {17409#(and (<= main_~i~0 0) (<= 3 main_~edgecount~0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,930 INFO L290 TraceCheckUtils]: 30: Hoare triple {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,930 INFO L290 TraceCheckUtils]: 31: Hoare triple {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,930 INFO L290 TraceCheckUtils]: 32: Hoare triple {17419#(and (<= main_~i~0 1) (<= 3 main_~edgecount~0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17429#(and (<= main_~i~0 2) (<= 3 main_~edgecount~0))} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 33: Hoare triple {17429#(and (<= main_~i~0 2) (<= 3 main_~edgecount~0))} assume !(~i~0 < ~edgecount~0); {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {17315#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L272 TraceCheckUtils]: 36: Hoare triple {17315#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-28 09:01:56,931 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-28 09:01:56,932 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 6 proven. 12 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:01:56,932 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:01:57,094 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-28 09:01:57,094 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-28 09:01:57,094 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-28 09:01:57,094 INFO L272 TraceCheckUtils]: 36: Hoare triple {17315#false} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {17315#false} is VALID [2022-04-28 09:01:57,094 INFO L290 TraceCheckUtils]: 35: Hoare triple {17315#false} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17315#false} is VALID [2022-04-28 09:01:57,094 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-28 09:01:57,095 INFO L290 TraceCheckUtils]: 33: Hoare triple {17325#(<= (+ main_~i~0 1) main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {17315#false} is VALID [2022-04-28 09:01:57,095 INFO L290 TraceCheckUtils]: 32: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17325#(<= (+ main_~i~0 1) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,096 INFO L290 TraceCheckUtils]: 31: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,096 INFO L290 TraceCheckUtils]: 30: Hoare triple {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,096 INFO L290 TraceCheckUtils]: 29: Hoare triple {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {17324#(<= (+ main_~i~0 2) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,097 INFO L290 TraceCheckUtils]: 28: Hoare triple {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,097 INFO L290 TraceCheckUtils]: 27: Hoare triple {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,097 INFO L290 TraceCheckUtils]: 26: Hoare triple {17322#(<= 3 main_~edgecount~0)} ~i~0 := 0; {17481#(<= (+ main_~i~0 3) main_~edgecount~0)} is VALID [2022-04-28 09:01:57,098 INFO L290 TraceCheckUtils]: 25: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~i~0 < ~nodecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,098 INFO L290 TraceCheckUtils]: 24: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume !(~j~0 < ~edgecount~0); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,099 INFO L290 TraceCheckUtils]: 22: Hoare triple {17322#(<= 3 main_~edgecount~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,099 INFO L290 TraceCheckUtils]: 21: Hoare triple {17322#(<= 3 main_~edgecount~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,100 INFO L290 TraceCheckUtils]: 20: Hoare triple {17321#(<= 2 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17322#(<= 3 main_~edgecount~0)} is VALID [2022-04-28 09:01:57,100 INFO L290 TraceCheckUtils]: 19: Hoare triple {17320#(<= 1 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17321#(<= 2 main_~j~0)} is VALID [2022-04-28 09:01:57,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {17320#(<= 1 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:57,101 INFO L290 TraceCheckUtils]: 17: Hoare triple {17320#(<= 1 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:57,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {17369#(<= 0 main_~j~0)} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {17320#(<= 1 main_~j~0)} is VALID [2022-04-28 09:01:57,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {17369#(<= 0 main_~j~0)} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:57,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {17369#(<= 0 main_~j~0)} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:57,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {17369#(<= 0 main_~j~0)} is VALID [2022-04-28 09:01:57,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:57,102 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:57,102 INFO L290 TraceCheckUtils]: 10: Hoare triple {17314#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L290 TraceCheckUtils]: 9: Hoare triple {17314#true} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {17314#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {17314#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {17314#true} is VALID [2022-04-28 09:01:57,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-28 09:01:57,115 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-28 09:01:57,115 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-28 09:01:57,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {17314#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {17314#true} is VALID [2022-04-28 09:01:57,116 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-28 09:01:57,116 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 6 proven. 12 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 09:01:57,116 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [915395223] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 09:01:57,116 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 09:01:57,116 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-28 09:01:57,116 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 09:01:57,117 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1165294746] [2022-04-28 09:01:57,117 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1165294746] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 09:01:57,117 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 09:01:57,117 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 09:01:57,117 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1977043182] [2022-04-28 09:01:57,117 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 09:01:57,117 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 40 [2022-04-28 09:01:57,117 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 09:01:57,118 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:01:57,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:01:57,148 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 09:01:57,148 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 09:01:57,149 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 09:01:57,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=157, Unknown=0, NotChecked=0, Total=210 [2022-04-28 09:01:57,149 INFO L87 Difference]: Start difference. First operand 170 states and 211 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:02:00,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:02:00,104 INFO L93 Difference]: Finished difference Result 366 states and 463 transitions. [2022-04-28 09:02:00,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 09:02:00,104 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 40 [2022-04-28 09:02:00,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 09:02:00,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:02:00,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-28 09:02:00,107 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:02:00,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-28 09:02:00,110 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 136 transitions. [2022-04-28 09:02:00,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:02:00,261 INFO L225 Difference]: With dead ends: 366 [2022-04-28 09:02:00,261 INFO L226 Difference]: Without dead ends: 337 [2022-04-28 09:02:00,261 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 75 SyntacticMatches, 2 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 145 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=170, Invalid=532, Unknown=0, NotChecked=0, Total=702 [2022-04-28 09:02:00,262 INFO L413 NwaCegarLoop]: 56 mSDtfsCounter, 141 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 445 mSolverCounterSat, 57 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 502 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 57 IncrementalHoareTripleChecker+Valid, 445 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 09:02:00,262 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [141 Valid, 88 Invalid, 502 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [57 Valid, 445 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 09:02:00,262 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states. [2022-04-28 09:02:01,506 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 227. [2022-04-28 09:02:01,506 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 09:02:01,507 INFO L82 GeneralOperation]: Start isEquivalent. First operand 337 states. Second operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:02:01,507 INFO L74 IsIncluded]: Start isIncluded. First operand 337 states. Second operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:02:01,507 INFO L87 Difference]: Start difference. First operand 337 states. Second operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:02:01,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:02:01,516 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-28 09:02:01,516 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-28 09:02:01,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:02:01,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:02:01,517 INFO L74 IsIncluded]: Start isIncluded. First operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 337 states. [2022-04-28 09:02:01,517 INFO L87 Difference]: Start difference. First operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 337 states. [2022-04-28 09:02:01,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 09:02:01,527 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-28 09:02:01,527 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-28 09:02:01,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 09:02:01,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 09:02:01,528 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 09:02:01,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 09:02:01,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 227 states, 216 states have (on average 1.2962962962962963) internal successors, (280), 218 states have internal predecessors, (280), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 09:02:01,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 227 states to 227 states and 290 transitions. [2022-04-28 09:02:01,534 INFO L78 Accepts]: Start accepts. Automaton has 227 states and 290 transitions. Word has length 40 [2022-04-28 09:02:01,534 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 09:02:01,534 INFO L495 AbstractCegarLoop]: Abstraction has 227 states and 290 transitions. [2022-04-28 09:02:01,534 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-28 09:02:01,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 227 states and 290 transitions. [2022-04-28 09:02:02,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 290 edges. 290 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 09:02:02,253 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 290 transitions. [2022-04-28 09:02:02,253 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 09:02:02,253 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 09:02:02,254 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 09:02:02,271 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 09:02:02,459 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 09:02:02,460 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 09:02:02,460 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 09:02:02,460 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 3 times [2022-04-28 09:02:02,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 09:02:02,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [618979820] [2022-04-28 09:02:02,463 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-28 09:02:02,464 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 09:02:02,464 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 4 times [2022-04-28 09:02:02,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 09:02:02,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1843335886] [2022-04-28 09:02:02,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 09:02:02,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 09:02:02,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:02:03,063 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 09:02:03,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:02:03,071 INFO L290 TraceCheckUtils]: 0: Hoare triple {19474#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {19455#true} is VALID [2022-04-28 09:02:03,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-28 09:02:03,071 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-28 09:02:03,071 INFO L272 TraceCheckUtils]: 0: Hoare triple {19455#true} call ULTIMATE.init(); {19474#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 09:02:03,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {19474#(and (= |old(~INFINITY~0)| ~INFINITY~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {19455#true} is VALID [2022-04-28 09:02:03,071 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-28 09:02:03,072 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-28 09:02:03,072 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-28 09:02:03,072 INFO L290 TraceCheckUtils]: 5: Hoare triple {19455#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {19455#true} is VALID [2022-04-28 09:02:03,072 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-28 09:02:03,074 INFO L290 TraceCheckUtils]: 7: Hoare triple {19455#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {19460#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:02:03,075 INFO L290 TraceCheckUtils]: 8: Hoare triple {19460#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0); {19460#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-28 09:02:03,075 INFO L290 TraceCheckUtils]: 9: Hoare triple {19460#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0) (= main_~i~0 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19461#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:02:03,076 INFO L290 TraceCheckUtils]: 10: Hoare triple {19461#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= |main_~#Dest~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {19462#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,076 INFO L290 TraceCheckUtils]: 11: Hoare triple {19462#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !!(~i~0 < ~nodecount~0); {19462#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,077 INFO L290 TraceCheckUtils]: 12: Hoare triple {19462#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (not (= (+ |main_~#distance~0.offset| (* main_~i~0 4)) 0)) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,091 INFO L290 TraceCheckUtils]: 13: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,092 INFO L290 TraceCheckUtils]: 14: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !(~i~0 < ~nodecount~0); {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,092 INFO L290 TraceCheckUtils]: 15: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} ~i~0 := 0; {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,093 INFO L290 TraceCheckUtils]: 16: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,093 INFO L290 TraceCheckUtils]: 17: Hoare triple {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {19465#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= main_~x~0 1) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,094 INFO L290 TraceCheckUtils]: 18: Hoare triple {19465#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= main_~j~0 0) (= main_~x~0 1) (= |main_~#Dest~0.offset| 0))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !(~j~0 < ~edgecount~0); {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,095 INFO L290 TraceCheckUtils]: 21: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {19463#(and (= (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 1) (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= |main_~#Dest~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,096 INFO L290 TraceCheckUtils]: 23: Hoare triple {19464#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (= (select (select |#memory_int| |main_~#Dest~0.base|) (+ (* main_~j~0 4) |main_~#Dest~0.offset|)) 1) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {19466#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= main_~x~0 1) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {19466#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= main_~x~0 1) (= |main_~#Dest~0.offset| 0))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {19467#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {19467#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= |main_~#Dest~0.offset| 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} assume !(~j~0 < ~edgecount~0); {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,099 INFO L290 TraceCheckUtils]: 28: Hoare triple {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} assume !(~i~0 < ~nodecount~0); {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,099 INFO L290 TraceCheckUtils]: 29: Hoare triple {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} ~i~0 := 0; {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} is VALID [2022-04-28 09:02:03,100 INFO L290 TraceCheckUtils]: 30: Hoare triple {19468#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Dest~0.offset| 0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:02:03,100 INFO L290 TraceCheckUtils]: 31: Hoare triple {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:02:03,100 INFO L290 TraceCheckUtils]: 32: Hoare triple {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:02:03,101 INFO L290 TraceCheckUtils]: 33: Hoare triple {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} assume !(~i~0 < ~edgecount~0); {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} is VALID [2022-04-28 09:02:03,101 INFO L290 TraceCheckUtils]: 34: Hoare triple {19469#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) 0) 0))} ~i~0 := 0; {19470#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} is VALID [2022-04-28 09:02:03,101 INFO L290 TraceCheckUtils]: 35: Hoare triple {19470#(and (= |main_~#distance~0.offset| 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4))) 0) (= main_~i~0 0))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19471#(= |main_#t~mem21| 0)} is VALID [2022-04-28 09:02:03,102 INFO L272 TraceCheckUtils]: 36: Hoare triple {19471#(= |main_#t~mem21| 0)} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {19472#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 09:02:03,102 INFO L290 TraceCheckUtils]: 37: Hoare triple {19472#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {19473#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 09:02:03,102 INFO L290 TraceCheckUtils]: 38: Hoare triple {19473#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {19456#false} is VALID [2022-04-28 09:02:03,103 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-28 09:02:03,103 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 1 proven. 15 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 09:02:03,103 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 09:02:03,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1843335886] [2022-04-28 09:02:03,103 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1843335886] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 09:02:03,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [4909033] [2022-04-28 09:02:03,103 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 09:02:03,103 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 09:02:03,103 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 09:02:03,104 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 09:02:03,105 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-28 09:02:03,205 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 09:02:03,206 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 09:02:03,207 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 09:02:03,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 09:02:03,229 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 09:02:03,277 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 84 treesize of output 76 [2022-04-28 09:02:03,370 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2022-04-28 09:02:03,510 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-28 09:02:03,512 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2022-04-28 09:02:04,240 INFO L356 Elim1Store]: treesize reduction 22, result has 50.0 percent of original size [2022-04-28 09:02:04,240 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 32 treesize of output 47 [2022-04-28 09:02:05,609 INFO L356 Elim1Store]: treesize reduction 122, result has 40.5 percent of original size [2022-04-28 09:02:05,610 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 6 select indices, 6 select index equivalence classes, 2 disjoint index pairs (out of 15 index pairs), introduced 8 new quantified variables, introduced 12 case distinctions, treesize of input 97 treesize of output 142 [2022-04-28 09:02:15,938 INFO L356 Elim1Store]: treesize reduction 23, result has 56.6 percent of original size [2022-04-28 09:02:15,939 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 6 select indices, 6 select index equivalence classes, 3 disjoint index pairs (out of 15 index pairs), introduced 8 new quantified variables, introduced 6 case distinctions, treesize of input 75 treesize of output 64 [2022-04-28 09:02:16,256 INFO L272 TraceCheckUtils]: 0: Hoare triple {19455#true} call ULTIMATE.init(); {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {19455#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~INFINITY~0 := 899; {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {19455#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~nodecount~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~edgecount~0 := #t~nondet5;havoc #t~nondet5; {19455#true} is VALID [2022-04-28 09:02:16,256 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-28 09:02:16,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {19455#true} assume !!(0 <= ~edgecount~0 && ~edgecount~0 <= 19);~source~0 := 0;call ~#Source~0.base, ~#Source~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Source~0.base, ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 4 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 8 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 12 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 16 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 20 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 24 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 28 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 32 + ~#Source~0.offset, 4);call write~init~int(4, ~#Source~0.base, 36 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 40 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 44 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 48 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 52 + ~#Source~0.offset, 4);call write~init~int(0, ~#Source~0.base, 56 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 60 + ~#Source~0.offset, 4);call write~init~int(1, ~#Source~0.base, 64 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 68 + ~#Source~0.offset, 4);call write~init~int(2, ~#Source~0.base, 72 + ~#Source~0.offset, 4);call write~init~int(3, ~#Source~0.base, 76 + ~#Source~0.offset, 4);call ~#Dest~0.base, ~#Dest~0.offset := #Ultimate.allocOnStack(80);call write~init~int(1, ~#Dest~0.base, ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 4 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 8 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 12 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 16 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 20 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 24 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 28 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 32 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 36 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 40 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 44 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 48 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 52 + ~#Dest~0.offset, 4);call write~init~int(3, ~#Dest~0.base, 56 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 60 + ~#Dest~0.offset, 4);call write~init~int(2, ~#Dest~0.base, 64 + ~#Dest~0.offset, 4);call write~init~int(1, ~#Dest~0.base, 68 + ~#Dest~0.offset, 4);call write~init~int(0, ~#Dest~0.base, 72 + ~#Dest~0.offset, 4);call write~init~int(4, ~#Dest~0.base, 76 + ~#Dest~0.offset, 4);call ~#Weight~0.base, ~#Weight~0.offset := #Ultimate.allocOnStack(80);call write~init~int(0, ~#Weight~0.base, ~#Weight~0.offset, 4);call write~init~int(1, ~#Weight~0.base, 4 + ~#Weight~0.offset, 4);call write~init~int(2, ~#Weight~0.base, 8 + ~#Weight~0.offset, 4);call write~init~int(3, ~#Weight~0.base, 12 + ~#Weight~0.offset, 4);call write~init~int(4, ~#Weight~0.base, 16 + ~#Weight~0.offset, 4);call write~init~int(5, ~#Weight~0.base, 20 + ~#Weight~0.offset, 4);call write~init~int(6, ~#Weight~0.base, 24 + ~#Weight~0.offset, 4);call write~init~int(7, ~#Weight~0.base, 28 + ~#Weight~0.offset, 4);call write~init~int(8, ~#Weight~0.base, 32 + ~#Weight~0.offset, 4);call write~init~int(9, ~#Weight~0.base, 36 + ~#Weight~0.offset, 4);call write~init~int(10, ~#Weight~0.base, 40 + ~#Weight~0.offset, 4);call write~init~int(11, ~#Weight~0.base, 44 + ~#Weight~0.offset, 4);call write~init~int(12, ~#Weight~0.base, 48 + ~#Weight~0.offset, 4);call write~init~int(13, ~#Weight~0.base, 52 + ~#Weight~0.offset, 4);call write~init~int(14, ~#Weight~0.base, 56 + ~#Weight~0.offset, 4);call write~init~int(15, ~#Weight~0.base, 60 + ~#Weight~0.offset, 4);call write~init~int(16, ~#Weight~0.base, 64 + ~#Weight~0.offset, 4);call write~init~int(17, ~#Weight~0.base, 68 + ~#Weight~0.offset, 4);call write~init~int(18, ~#Weight~0.base, 72 + ~#Weight~0.offset, 4);call write~init~int(19, ~#Weight~0.base, 76 + ~#Weight~0.offset, 4);call ~#distance~0.base, ~#distance~0.offset := #Ultimate.allocOnStack(20);havoc ~x~0;havoc ~y~0;havoc ~i~0;havoc ~j~0;~i~0 := 0; {19499#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {19499#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !!(~i~0 < ~nodecount~0); {19499#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {19499#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume ~i~0 == ~source~0;call write~int(0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19506#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,261 INFO L290 TraceCheckUtils]: 10: Hoare triple {19506#(and (= |main_~#distance~0.offset| 0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* main_~i~0 4)))) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {19510#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,261 INFO L290 TraceCheckUtils]: 11: Hoare triple {19510#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !!(~i~0 < ~nodecount~0); {19514#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,262 INFO L290 TraceCheckUtils]: 12: Hoare triple {19514#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} assume !(~i~0 == ~source~0);call write~int(~INFINITY~0, ~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19514#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,263 INFO L290 TraceCheckUtils]: 13: Hoare triple {19514#(and (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* main_~i~0 4)))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {19521#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~i~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,263 INFO L290 TraceCheckUtils]: 14: Hoare triple {19521#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~i~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !(~i~0 < ~nodecount~0); {19525#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {19525#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} ~i~0 := 0; {19529#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {19529#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {19533#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~j~0 0) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,266 INFO L290 TraceCheckUtils]: 17: Hoare triple {19533#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~j~0 0) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {19537#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~i~0 0) (= main_~x~0 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,267 INFO L290 TraceCheckUtils]: 18: Hoare triple {19537#(and (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (< v_main_~i~0_178 main_~nodecount~0) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178)))))) (= main_~i~0 0) (= main_~x~0 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,271 INFO L290 TraceCheckUtils]: 20: Hoare triple {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !(~j~0 < ~edgecount~0); {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,272 INFO L290 TraceCheckUtils]: 21: Hoare triple {19541#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {19551#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,273 INFO L290 TraceCheckUtils]: 22: Hoare triple {19551#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (= |main_~#Source~0.offset| 0))} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {19555#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= main_~i~0 1) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,275 INFO L290 TraceCheckUtils]: 23: Hoare triple {19555#(and (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~j~0 0) (= main_~i~0 1) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} assume !!(~j~0 < ~edgecount~0);call #t~mem9 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~j~0, 4);~x~0 := #t~mem9;havoc #t~mem9;call #t~mem10 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~j~0, 4);~y~0 := #t~mem10;havoc #t~mem10;call #t~mem13 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem11 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem12 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~j~0, 4); {19559#(and (<= (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) |main_#t~mem12|) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= |main_#t~mem13| (select (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (= main_~x~0 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) |main_#t~mem11|))} is VALID [2022-04-28 09:02:16,280 INFO L290 TraceCheckUtils]: 24: Hoare triple {19559#(and (<= (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) |main_#t~mem12|) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (+ |main_~#distance~0.offset| (* 4 v_main_~i~0_178)) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset| 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (= |main_~#distance~0.offset| 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= |main_#t~mem13| (select (select |#memory_int| |main_~#distance~0.base|) (+ (* main_~x~0 4) |main_~#distance~0.offset|))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (= main_~x~0 (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (- 1)) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) |main_#t~mem11|))} assume #t~mem13 > #t~mem11 + #t~mem12;havoc #t~mem13;havoc #t~mem11;havoc #t~mem12;call write~int(-1, ~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4); {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} #t~post8 := ~j~0;~j~0 := 1 + #t~post8;havoc #t~post8; {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,283 INFO L290 TraceCheckUtils]: 26: Hoare triple {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} assume !(~j~0 < ~edgecount~0); {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,285 INFO L290 TraceCheckUtils]: 27: Hoare triple {19563#(and (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 1) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (or (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (and (not (= (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Weight~0.offset| 0) (< main_~i~0 main_~nodecount~0) (= |main_~#Source~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {19573#(and (< 1 main_~nodecount~0) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (<= main_~i~0 2) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,287 INFO L290 TraceCheckUtils]: 28: Hoare triple {19573#(and (< 1 main_~nodecount~0) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (exists ((v_main_~i~0_178 Int)) (and (<= main_~nodecount~0 (+ v_main_~i~0_178 1)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< v_main_~i~0_178 main_~nodecount~0))) (<= main_~i~0 2) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} assume !(~i~0 < ~nodecount~0); {19577#(and (exists ((v_main_~i~0_178 Int)) (and (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< 0 v_main_~i~0_178) (< v_main_~i~0_178 2))) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,288 INFO L290 TraceCheckUtils]: 29: Hoare triple {19577#(and (exists ((v_main_~i~0_178 Int)) (and (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< 0 v_main_~i~0_178) (< v_main_~i~0_178 2))) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} ~i~0 := 0; {19581#(and (exists ((v_main_~i~0_178 Int)) (and (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< 0 v_main_~i~0_178) (< v_main_~i~0_178 2))) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} is VALID [2022-04-28 09:02:16,300 INFO L290 TraceCheckUtils]: 30: Hoare triple {19581#(and (exists ((v_main_~i~0_178 Int)) (and (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (< 0 v_main_~i~0_178) (< v_main_~i~0_178 2))) (= |main_~#distance~0.offset| 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (= main_~i~0 0) (= |main_~#Weight~0.offset| 0) (or (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 0)) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* (select (select |#memory_int| |main_~#Source~0.base|) |main_~#Source~0.offset|) 4))) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|))) (and (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) |main_~#Source~0.offset|) (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) (select (select |#memory_int| |main_~#Weight~0.base|) |main_~#Weight~0.offset|) 1) 0))) (= |main_~#Source~0.offset| 0))} assume !!(~i~0 < ~edgecount~0);call #t~mem15 := read~int(~#Dest~0.base, ~#Dest~0.offset + 4 * ~i~0, 4);~x~0 := #t~mem15;havoc #t~mem15;call #t~mem16 := read~int(~#Source~0.base, ~#Source~0.offset + 4 * ~i~0, 4);~y~0 := #t~mem16;havoc #t~mem16;call #t~mem19 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~x~0, 4);call #t~mem17 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~y~0, 4);call #t~mem18 := read~int(~#Weight~0.base, ~#Weight~0.offset + 4 * ~i~0, 4); {19585#(and (= |main_~#distance~0.offset| 0) (exists ((v_main_~i~0_178 Int) (|main_~#Dest~0.base| Int) (|main_~#Weight~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Source~0.base| Int)) (and (<= |main_#t~mem18| (select (select |#memory_int| |main_~#Weight~0.base|) 0)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (<= |main_#t~mem17| (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|))) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) |main_#t~mem19|) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (< 0 v_main_~i~0_178) (or (and (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0)) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) 0) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) 0) 0)) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|)) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) 0) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) 0) 0)) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|)) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0)))) (< v_main_~i~0_178 2))))} is VALID [2022-04-28 09:02:16,303 INFO L290 TraceCheckUtils]: 31: Hoare triple {19585#(and (= |main_~#distance~0.offset| 0) (exists ((v_main_~i~0_178 Int) (|main_~#Dest~0.base| Int) (|main_~#Weight~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Source~0.base| Int)) (and (<= |main_#t~mem18| (select (select |#memory_int| |main_~#Weight~0.base|) 0)) (or (= (* 4 v_main_~i~0_178) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) 4)) (<= 0 (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset| (* 4 v_main_~i~0_178))))) (<= |main_#t~mem17| (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|))) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) |main_#t~mem19|) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)) (< 0 v_main_~i~0_178) (or (and (= |main_~#Source~0.base| |main_~#distance~0.base|) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0)) (and (not (= |main_~#Source~0.base| |main_~#distance~0.base|)) (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) 0) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) 0) 0)) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|)) 1) 0))) (and (or (and (= (select (select |#memory_int| |main_~#Source~0.base|) 0) (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|)) (< (select (select |#memory_int| |main_~#Weight~0.base|) 0) 0)) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Source~0.base|) 0) 4) |main_~#distance~0.offset|)) 1) 0)) (not (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0)))) (< v_main_~i~0_178 2))))} assume !(#t~mem19 > #t~mem17 + #t~mem18);havoc #t~mem19;havoc #t~mem17;havoc #t~mem18; {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} is VALID [2022-04-28 09:02:16,304 INFO L290 TraceCheckUtils]: 32: Hoare triple {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} is VALID [2022-04-28 09:02:16,305 INFO L290 TraceCheckUtils]: 33: Hoare triple {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} assume !(~i~0 < ~edgecount~0); {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} is VALID [2022-04-28 09:02:16,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {19589#(and (= |main_~#distance~0.offset| 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} ~i~0 := 0; {19599#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} is VALID [2022-04-28 09:02:16,307 INFO L290 TraceCheckUtils]: 35: Hoare triple {19599#(and (= |main_~#distance~0.offset| 0) (= main_~i~0 0) (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int) (|main_~#Weight~0.base| Int)) (and (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (= (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|) 0) (<= 0 (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) 1)) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)) (<= (select (select |#memory_int| |main_~#distance~0.base|) (+ (* (select (select |#memory_int| |main_~#Dest~0.base|) |main_~#Dest~0.offset|) 4) |main_~#distance~0.offset|)) (+ (select (select |#memory_int| |main_~#distance~0.base|) (+ |main_~#distance~0.offset| (* 4 (select (select |#memory_int| |main_~#distance~0.base|) 0)))) (select (select |#memory_int| |main_~#Weight~0.base|) 0))) (not (= |main_~#Dest~0.base| |main_~#distance~0.base|)))))} assume !!(~i~0 < ~nodecount~0);call #t~mem21 := read~int(~#distance~0.base, ~#distance~0.offset + 4 * ~i~0, 4); {19603#(< 0 (+ |main_#t~mem21| 1))} is VALID [2022-04-28 09:02:16,307 INFO L272 TraceCheckUtils]: 36: Hoare triple {19603#(< 0 (+ |main_#t~mem21| 1))} call __VERIFIER_assert((if #t~mem21 >= 0 then 1 else 0)); {19607#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 09:02:16,307 INFO L290 TraceCheckUtils]: 37: Hoare triple {19607#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19611#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 09:02:16,308 INFO L290 TraceCheckUtils]: 38: Hoare triple {19611#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19456#false} is VALID [2022-04-28 09:02:16,308 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-28 09:02:16,308 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 3 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 09:02:16,308 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 09:03:15,637 INFO L356 Elim1Store]: treesize reduction 20, result has 59.2 percent of original size [2022-04-28 09:03:15,675 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 656201695925 treesize of output 618134774101