/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/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/loops/eureka_01-1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 05:41:41,629 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 05:41:41,631 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 05:41:41,678 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 05:41:41,678 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 05:41:41,680 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 05:41:41,682 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 05:41:41,684 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 05:41:41,686 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 05:41:41,690 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 05:41:41,691 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 05:41:41,692 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 05:41:41,692 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 05:41:41,694 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 05:41:41,695 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 05:41:41,698 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 05:41:41,698 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 05:41:41,699 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 05:41:41,701 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 05:41:41,706 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 05:41:41,708 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 05:41:41,709 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 05:41:41,709 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 05:41:41,710 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 05:41:41,711 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 05:41:41,717 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 05:41:41,717 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 05:41:41,718 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 05:41:41,718 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 05:41:41,719 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 05:41:41,720 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 05:41:41,720 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 05:41:41,721 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 05:41:41,722 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 05:41:41,722 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 05:41:41,723 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 05:41:41,723 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 05:41:41,724 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 05:41:41,724 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 05:41:41,724 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 05:41:41,725 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 05:41:41,726 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 05:41:41,727 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 05:41:41,737 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 05:41:41,738 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 05:41:41,739 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 05:41:41,739 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 05:41:41,739 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 05:41:41,739 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 05:41:41,739 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 05:41:41,739 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 05:41:41,740 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 05:41:41,740 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 05:41:41,741 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 05:41:41,741 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 05:41:41,742 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 05:41:41,742 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 05:41:41,743 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 05:41:41,743 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-15 05:41:41,963 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 05:41:41,985 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 05:41:41,987 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 05:41:41,988 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 05:41:41,989 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 05:41:41,990 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-15 05:41:42,067 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2d896796/7dd19d4bc45a4dbbb845b2cb0f84b315/FLAG83d86cf91 [2022-04-15 05:41:42,388 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 05:41:42,389 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/eureka_01-1.c [2022-04-15 05:41:42,394 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2d896796/7dd19d4bc45a4dbbb845b2cb0f84b315/FLAG83d86cf91 [2022-04-15 05:41:42,403 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2d896796/7dd19d4bc45a4dbbb845b2cb0f84b315 [2022-04-15 05:41:42,405 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 05:41:42,406 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 05:41:42,411 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 05:41:42,411 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 05:41:42,415 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 05:41:42,416 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,417 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@51b3bf96 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42, skipping insertion in model container [2022-04-15 05:41:42,417 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,422 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 05:41:42,437 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 05:41:42,625 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-15 05:41:42,657 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 05:41:42,663 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 05:41:42,673 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-15 05:41:42,692 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 05:41:42,702 INFO L208 MainTranslator]: Completed translation [2022-04-15 05:41:42,702 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42 WrapperNode [2022-04-15 05:41:42,702 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 05:41:42,703 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 05:41:42,703 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 05:41:42,703 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 05:41:42,712 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,712 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,720 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,720 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,738 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,743 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,745 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,747 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 05:41:42,748 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 05:41:42,748 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 05:41:42,748 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 05:41:42,749 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (1/1) ... [2022-04-15 05:41:42,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 05:41:42,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:41:42,820 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-15 05:41:42,827 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-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 05:41:42,849 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 05:41:42,849 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-15 05:41:42,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 05:41:42,851 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 05:41:42,851 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 05:41:42,851 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 05:41:42,851 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 05:41:42,851 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 05:41:42,908 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 05:41:42,909 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 05:41:43,222 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 05:41:43,230 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 05:41:43,231 INFO L299 CfgBuilder]: Removed 5 assume(true) statements. [2022-04-15 05:41:43,232 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 05:41:43 BoogieIcfgContainer [2022-04-15 05:41:43,232 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 05:41:43,234 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 05:41:43,234 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 05:41:43,237 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 05:41:43,237 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 05:41:42" (1/3) ... [2022-04-15 05:41:43,238 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@333f93fd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 05:41:43, skipping insertion in model container [2022-04-15 05:41:43,238 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 05:41:42" (2/3) ... [2022-04-15 05:41:43,238 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@333f93fd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 05:41:43, skipping insertion in model container [2022-04-15 05:41:43,239 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 05:41:43" (3/3) ... [2022-04-15 05:41:43,239 INFO L111 eAbstractionObserver]: Analyzing ICFG eureka_01-1.c [2022-04-15 05:41:43,243 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 05:41:43,244 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 05:41:43,285 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 05:41:43,293 INFO L340 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 [2022-04-15 05:41:43,294 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 05:41:43,314 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-15 05:41:43,320 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-15 05:41:43,321 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:43,321 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 05:41:43,322 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:43,326 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:43,326 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 1 times [2022-04-15 05:41:43,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:43,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [707776352] [2022-04-15 05:41:43,345 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 05:41:43,345 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 2 times [2022-04-15 05:41:43,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:43,350 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1957051002] [2022-04-15 05:41:43,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:43,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:43,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:43,632 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:43,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:43,656 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-15 05:41:43,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 05:41:43,657 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-15 05:41:43,659 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-15 05:41:43,659 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-15 05:41:43,659 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 05:41:43,659 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-15 05:41:43,659 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret22 := main(); {40#true} is VALID [2022-04-15 05:41:43,660 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-15 05:41:43,660 INFO L290 TraceCheckUtils]: 6: Hoare triple {40#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {40#true} is VALID [2022-04-15 05:41:43,661 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-15 05:41:43,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume !true; {41#false} is VALID [2022-04-15 05:41:43,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-15 05:41:43,668 INFO L290 TraceCheckUtils]: 10: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 05:41:43,668 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-15 05:41:43,668 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 05:41:43,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-15 05:41:43,669 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-15 05:41:43,669 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-15 05:41:43,669 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-15 05:41:43,669 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-15 05:41:43,670 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-15 05:41:43,670 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-15 05:41:43,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:43,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1957051002] [2022-04-15 05:41:43,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1957051002] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:43,672 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:43,672 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 05:41:43,674 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:43,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [707776352] [2022-04-15 05:41:43,674 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [707776352] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:43,674 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:43,674 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 05:41:43,675 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [419277152] [2022-04-15 05:41:43,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:43,679 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-15 05:41:43,680 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:43,683 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-15 05:41:43,725 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-15 05:41:43,726 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 05:41:43,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:43,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 05:41:43,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 05:41:43,750 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-15 05:41:43,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:43,929 INFO L93 Difference]: Finished difference Result 63 states and 89 transitions. [2022-04-15 05:41:43,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 05:41:43,930 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-15 05:41:43,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:43,931 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-15 05:41:43,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-15 05:41:43,937 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-15 05:41:43,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-15 05:41:43,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 89 transitions. [2022-04-15 05:41:44,039 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-15 05:41:44,049 INFO L225 Difference]: With dead ends: 63 [2022-04-15 05:41:44,050 INFO L226 Difference]: Without dead ends: 32 [2022-04-15 05:41:44,052 INFO L912 BasicCegarLoop]: 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-15 05:41:44,055 INFO L913 BasicCegarLoop]: 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-15 05:41:44,056 INFO L914 BasicCegarLoop]: 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-15 05:41:44,071 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-15 05:41:44,092 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-15 05:41:44,092 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:44,094 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-15 05:41:44,094 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-15 05:41:44,096 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-15 05:41:44,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:44,101 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-15 05:41:44,101 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-15 05:41:44,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:44,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:44,102 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-15 05:41:44,104 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-15 05:41:44,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:44,109 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-15 05:41:44,109 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-15 05:41:44,110 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:44,110 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:44,113 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:44,113 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:44,118 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-15 05:41:44,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 38 transitions. [2022-04-15 05:41:44,123 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 38 transitions. Word has length 19 [2022-04-15 05:41:44,123 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:44,123 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 38 transitions. [2022-04-15 05:41:44,124 INFO L479 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-15 05:41:44,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 38 transitions. [2022-04-15 05:41:44,166 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-15 05:41:44,167 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-15 05:41:44,167 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-15 05:41:44,167 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:44,168 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 05:41:44,168 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 05:41:44,168 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:44,169 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:44,169 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 1 times [2022-04-15 05:41:44,169 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:44,169 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1722628683] [2022-04-15 05:41:44,170 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 05:41:44,170 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 2 times [2022-04-15 05:41:44,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:44,171 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240516311] [2022-04-15 05:41:44,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:44,171 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:44,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:44,327 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:44,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:44,347 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-15 05:41:44,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-15 05:41:44,347 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-15 05:41:44,348 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-15 05:41:44,348 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-15 05:41:44,348 INFO L290 TraceCheckUtils]: 2: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-15 05:41:44,349 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-15 05:41:44,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {302#true} call #t~ret22 := main(); {302#true} is VALID [2022-04-15 05:41:44,349 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-15 05:41:44,349 INFO L290 TraceCheckUtils]: 6: Hoare triple {302#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {302#true} is VALID [2022-04-15 05:41:44,350 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-15 05:41:44,350 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-15 05:41:44,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-15 05:41:44,351 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-15 05:41:44,352 INFO L290 TraceCheckUtils]: 11: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-15 05:41:44,352 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-15 05:41:44,353 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-15 05:41:44,354 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-15 05:41:44,355 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-15 05:41:44,355 INFO L290 TraceCheckUtils]: 16: Hoare triple {303#false} ~cond := #in~cond; {303#false} is VALID [2022-04-15 05:41:44,355 INFO L290 TraceCheckUtils]: 17: Hoare triple {303#false} assume 0 == ~cond; {303#false} is VALID [2022-04-15 05:41:44,355 INFO L290 TraceCheckUtils]: 18: Hoare triple {303#false} assume !false; {303#false} is VALID [2022-04-15 05:41:44,356 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-15 05:41:44,356 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:44,359 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240516311] [2022-04-15 05:41:44,360 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1240516311] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:44,360 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:44,360 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 05:41:44,360 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:44,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1722628683] [2022-04-15 05:41:44,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1722628683] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:44,361 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:44,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 05:41:44,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1651782488] [2022-04-15 05:41:44,362 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:44,362 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-15 05:41:44,363 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:44,363 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-15 05:41:44,380 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-15 05:41:44,380 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 05:41:44,380 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:44,381 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 05:41:44,382 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 05:41:44,382 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-15 05:41:44,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:44,704 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-15 05:41:44,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 05:41:44,706 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-15 05:41:44,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:44,707 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-15 05:41:44,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-15 05:41:44,711 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-15 05:41:44,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-15 05:41:44,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 100 transitions. [2022-04-15 05:41:44,810 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-15 05:41:44,813 INFO L225 Difference]: With dead ends: 80 [2022-04-15 05:41:44,814 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 05:41:44,815 INFO L912 BasicCegarLoop]: 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-15 05:41:44,818 INFO L913 BasicCegarLoop]: 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-15 05:41:44,820 INFO L914 BasicCegarLoop]: 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-15 05:41:44,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 05:41:44,827 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 34. [2022-04-15 05:41:44,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:44,827 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-15 05:41:44,827 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-15 05:41:44,828 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-15 05:41:44,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:44,831 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-15 05:41:44,831 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-15 05:41:44,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:44,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:44,832 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-15 05:41:44,832 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-15 05:41:44,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:44,835 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-15 05:41:44,835 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-15 05:41:44,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:44,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:44,836 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:44,836 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:44,836 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-15 05:41:44,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-15 05:41:44,837 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 19 [2022-04-15 05:41:44,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:44,838 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-15 05:41:44,838 INFO L479 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-15 05:41:44,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-15 05:41:44,883 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-15 05:41:44,883 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-15 05:41:44,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-15 05:41:44,884 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:44,884 INFO L499 BasicCegarLoop]: 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-15 05:41:44,885 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 05:41:44,885 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:44,885 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:44,885 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 1 times [2022-04-15 05:41:44,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:44,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [759821799] [2022-04-15 05:41:44,903 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:41:44,903 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:41:44,903 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:41:44,903 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 2 times [2022-04-15 05:41:44,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:44,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1852193962] [2022-04-15 05:41:44,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:44,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:44,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:45,188 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:45,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:45,196 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-15 05:41:45,196 INFO L290 TraceCheckUtils]: 1: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-15 05:41:45,196 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-15 05:41:45,197 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-15 05:41:45,197 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-15 05:41:45,197 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-15 05:41:45,198 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-15 05:41:45,198 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-15 05:41:45,198 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-15 05:41:45,198 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-15 05:41:45,200 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-15 05:41:45,201 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-15 05:41:45,202 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-15 05:41:45,202 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-15 05:41:45,203 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-15 05:41:45,203 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-15 05:41:45,204 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-15 05:41:45,204 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-15 05:41:45,205 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-15 05:41:45,205 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-15 05:41:45,206 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-15 05:41:45,206 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-15 05:41:45,207 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-15 05:41:45,207 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-15 05:41:45,208 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-15 05:41:45,209 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-15 05:41:45,209 INFO L290 TraceCheckUtils]: 23: Hoare triple {653#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {644#false} is VALID [2022-04-15 05:41:45,209 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-15 05:41:45,210 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-15 05:41:45,210 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:45,210 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1852193962] [2022-04-15 05:41:45,210 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1852193962] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:41:45,210 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [133990124] [2022-04-15 05:41:45,210 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:41:45,211 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:41:45,211 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:41:45,220 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-15 05:41:45,242 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-15 05:41:45,315 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:41:45,316 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:41:45,318 INFO L263 TraceCheckSpWp]: Trace formula consists of 275 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 05:41:45,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:45,334 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:41:45,517 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-15 05:41:45,673 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-15 05:41:45,741 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-15 05:41:45,742 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-15 05:41:45,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-15 05:41:45,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-15 05:41:45,742 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-15 05:41:45,742 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-15 05:41:45,742 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-15 05:41:45,747 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-15 05:41:45,747 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-15 05:41:45,748 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-15 05:41:45,748 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-15 05:41:45,749 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-15 05:41:45,749 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-15 05:41:45,751 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-15 05:41:45,751 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-15 05:41:45,752 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-15 05:41:45,752 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-15 05:41:45,753 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-15 05:41:45,753 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-15 05:41:45,754 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-15 05:41:45,754 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-15 05:41:45,755 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-15 05:41:45,756 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:41:45,756 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-15 05:41:45,756 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-15 05:41:45,756 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-15 05:41:45,757 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:41:45,953 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-15 05:41:45,965 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-15 05:41:46,013 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-15 05:41:46,013 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-15 05:41:46,014 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:41:46,014 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-15 05:41:46,015 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-15 05:41:46,015 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-15 05:41:46,016 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-15 05:41:46,018 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-15 05:41:46,018 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-15 05:41:46,018 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-15 05:41:46,019 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-15 05:41:46,019 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-15 05:41:46,020 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-15 05:41:46,020 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-15 05:41:46,021 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-15 05:41:46,022 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-15 05:41:46,022 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-15 05:41:46,024 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-15 05:41:46,025 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-15 05:41:46,025 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-15 05:41:46,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-15 05:41:46,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-15 05:41:46,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-15 05:41:46,025 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-15 05:41:46,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-15 05:41:46,026 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-15 05:41:46,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [133990124] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:41:46,026 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:41:46,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 17 [2022-04-15 05:41:46,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:46,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [759821799] [2022-04-15 05:41:46,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [759821799] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:46,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:46,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 05:41:46,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [805308596] [2022-04-15 05:41:46,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:46,028 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-15 05:41:46,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:46,028 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-15 05:41:46,049 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-15 05:41:46,049 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 05:41:46,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:46,049 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 05:41:46,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=222, Unknown=0, NotChecked=0, Total=272 [2022-04-15 05:41:46,050 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-15 05:41:46,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:46,794 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-04-15 05:41:46,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 05:41:46,794 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-15 05:41:46,795 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:46,795 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-15 05:41:46,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 05:41:46,800 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-15 05:41:46,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 05:41:46,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-15 05:41:46,907 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-15 05:41:46,913 INFO L225 Difference]: With dead ends: 78 [2022-04-15 05:41:46,913 INFO L226 Difference]: Without dead ends: 76 [2022-04-15 05:41:46,914 INFO L912 BasicCegarLoop]: 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-15 05:41:46,923 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 90 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 270 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s 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-15 05:41:46,926 INFO L914 BasicCegarLoop]: 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-15 05:41:46,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-15 05:41:46,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 55. [2022-04-15 05:41:46,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:46,940 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-15 05:41:46,941 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-15 05:41:46,941 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-15 05:41:46,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:46,948 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-15 05:41:46,948 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-15 05:41:46,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:46,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:46,951 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-15 05:41:46,951 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-15 05:41:46,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:46,957 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-15 05:41:46,957 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-15 05:41:46,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:46,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:46,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:46,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:46,962 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-15 05:41:46,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 67 transitions. [2022-04-15 05:41:46,966 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 67 transitions. Word has length 25 [2022-04-15 05:41:46,967 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:46,967 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 67 transitions. [2022-04-15 05:41:46,967 INFO L479 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-15 05:41:46,967 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 67 transitions. [2022-04-15 05:41:47,040 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-15 05:41:47,040 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 67 transitions. [2022-04-15 05:41:47,040 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-15 05:41:47,041 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:47,041 INFO L499 BasicCegarLoop]: 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-15 05:41:47,065 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-15 05:41:47,263 WARN L460 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-15 05:41:47,264 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:47,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:47,264 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 1 times [2022-04-15 05:41:47,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:47,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [38313945] [2022-04-15 05:41:47,268 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:41:47,269 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:41:47,269 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:41:47,269 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 2 times [2022-04-15 05:41:47,269 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:47,269 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1168916094] [2022-04-15 05:41:47,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:47,269 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:47,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:47,324 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:47,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:47,329 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-15 05:41:47,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-15 05:41:47,329 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-15 05:41:47,330 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-15 05:41:47,330 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-15 05:41:47,330 INFO L290 TraceCheckUtils]: 2: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-15 05:41:47,330 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-15 05:41:47,330 INFO L272 TraceCheckUtils]: 4: Hoare triple {1244#true} call #t~ret22 := main(); {1244#true} is VALID [2022-04-15 05:41:47,331 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-15 05:41:47,331 INFO L290 TraceCheckUtils]: 6: Hoare triple {1244#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1244#true} is VALID [2022-04-15 05:41:47,333 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-15 05:41:47,333 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-15 05:41:47,334 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-15 05:41:47,334 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-15 05:41:47,334 INFO L290 TraceCheckUtils]: 11: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-15 05:41:47,334 INFO L290 TraceCheckUtils]: 12: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-15 05:41:47,334 INFO L290 TraceCheckUtils]: 13: Hoare triple {1245#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1245#false} is VALID [2022-04-15 05:41:47,334 INFO L290 TraceCheckUtils]: 14: Hoare triple {1245#false} assume !(~j~0 < ~edgecount~0); {1245#false} is VALID [2022-04-15 05:41:47,334 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-15 05:41:47,335 INFO L290 TraceCheckUtils]: 16: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-15 05:41:47,335 INFO L290 TraceCheckUtils]: 17: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-15 05:41:47,335 INFO L290 TraceCheckUtils]: 18: Hoare triple {1245#false} assume !(~i~0 < ~edgecount~0); {1245#false} is VALID [2022-04-15 05:41:47,335 INFO L290 TraceCheckUtils]: 19: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-15 05:41:47,335 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-15 05:41:47,335 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-15 05:41:47,335 INFO L290 TraceCheckUtils]: 22: Hoare triple {1245#false} ~cond := #in~cond; {1245#false} is VALID [2022-04-15 05:41:47,336 INFO L290 TraceCheckUtils]: 23: Hoare triple {1245#false} assume 0 == ~cond; {1245#false} is VALID [2022-04-15 05:41:47,336 INFO L290 TraceCheckUtils]: 24: Hoare triple {1245#false} assume !false; {1245#false} is VALID [2022-04-15 05:41:47,336 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-15 05:41:47,336 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:47,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1168916094] [2022-04-15 05:41:47,336 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1168916094] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:47,336 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:47,336 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 05:41:47,337 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:47,337 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [38313945] [2022-04-15 05:41:47,337 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [38313945] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:47,337 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:47,337 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 05:41:47,337 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1217290174] [2022-04-15 05:41:47,337 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:47,338 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-15 05:41:47,338 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:47,338 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-15 05:41:47,355 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-15 05:41:47,355 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 05:41:47,355 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:47,356 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 05:41:47,356 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 05:41:47,356 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-15 05:41:47,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:47,457 INFO L93 Difference]: Finished difference Result 82 states and 101 transitions. [2022-04-15 05:41:47,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 05:41:47,457 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-15 05:41:47,457 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:47,457 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-15 05:41:47,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-15 05:41:47,459 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-15 05:41:47,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-15 05:41:47,461 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 72 transitions. [2022-04-15 05:41:47,513 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-15 05:41:47,514 INFO L225 Difference]: With dead ends: 82 [2022-04-15 05:41:47,514 INFO L226 Difference]: Without dead ends: 57 [2022-04-15 05:41:47,515 INFO L912 BasicCegarLoop]: 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-15 05:41:47,516 INFO L913 BasicCegarLoop]: 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-15 05:41:47,516 INFO L914 BasicCegarLoop]: 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-15 05:41:47,516 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-15 05:41:47,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 56. [2022-04-15 05:41:47,525 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:47,525 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-15 05:41:47,525 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-15 05:41:47,526 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-15 05:41:47,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:47,527 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-15 05:41:47,527 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-15 05:41:47,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:47,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:47,528 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-15 05:41:47,528 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-15 05:41:47,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:47,530 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-15 05:41:47,530 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-15 05:41:47,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:47,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:47,530 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:47,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:47,531 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-15 05:41:47,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 68 transitions. [2022-04-15 05:41:47,532 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 68 transitions. Word has length 25 [2022-04-15 05:41:47,532 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:47,533 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 68 transitions. [2022-04-15 05:41:47,533 INFO L479 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-15 05:41:47,533 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 68 transitions. [2022-04-15 05:41:47,603 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-15 05:41:47,604 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 68 transitions. [2022-04-15 05:41:47,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 05:41:47,604 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:47,604 INFO L499 BasicCegarLoop]: 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-15 05:41:47,604 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-15 05:41:47,605 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:47,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:47,605 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 1 times [2022-04-15 05:41:47,605 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:47,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [258520941] [2022-04-15 05:41:47,608 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:41:47,608 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:41:47,608 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:41:47,608 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 2 times [2022-04-15 05:41:47,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:47,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1476064628] [2022-04-15 05:41:47,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:47,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:47,645 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:47,691 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:47,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:47,695 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-15 05:41:47,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 05:41:47,696 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-15 05:41:47,696 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-15 05:41:47,697 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-15 05:41:47,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 05:41:47,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-15 05:41:47,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-15 05:41:47,697 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-15 05:41:47,697 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-15 05:41:47,697 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-15 05:41:47,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:47,698 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-15 05:41:47,698 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-15 05:41:47,698 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:47,698 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-15 05:41:47,698 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-15 05:41:47,699 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-15 05:41:47,700 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-15 05:41:47,701 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-15 05:41:47,701 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-15 05:41:47,701 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-15 05:41:47,702 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-15 05:41:47,702 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-15 05:41:47,703 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-15 05:41:47,703 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-15 05:41:47,703 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-15 05:41:47,703 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-15 05:41:47,703 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 05:41:47,703 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 05:41:47,703 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 05:41:47,704 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-15 05:41:47,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:47,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1476064628] [2022-04-15 05:41:47,704 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1476064628] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:41:47,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [166129333] [2022-04-15 05:41:47,704 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:41:47,704 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:41:47,705 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:41:47,705 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-15 05:41:47,708 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-15 05:41:47,811 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:41:47,811 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:41:47,813 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-15 05:41:47,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:47,822 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:41:47,924 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-15 05:41:47,924 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-15 05:41:47,925 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 05:41:47,925 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-15 05:41:47,926 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-15 05:41:47,926 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-15 05:41:47,926 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-15 05:41:47,926 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-15 05:41:47,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:47,927 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-15 05:41:47,927 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-15 05:41:47,927 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:47,927 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-15 05:41:47,927 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-15 05:41:47,928 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-15 05:41:47,929 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-15 05:41:47,929 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-15 05:41:47,929 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-15 05:41:47,930 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-15 05:41:47,930 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-15 05:41:47,931 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-15 05:41:47,931 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-15 05:41:47,931 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-15 05:41:47,932 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-15 05:41:47,933 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-15 05:41:47,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 05:41:47,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 05:41:47,933 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 05:41:47,933 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-15 05:41:47,934 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:41:48,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 05:41:48,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 05:41:48,023 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 05:41:48,023 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-15 05:41:48,023 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-15 05:41:48,023 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-15 05:41:48,023 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#(< main_~i~0 main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {1646#false} is VALID [2022-04-15 05:41:48,024 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-15 05:41:48,024 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-15 05:41:48,024 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-15 05:41:48,025 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-15 05:41:48,025 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-15 05:41:48,025 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-15 05:41:48,026 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-15 05:41:48,027 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-15 05:41:48,027 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-15 05:41:48,027 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:48,027 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-15 05:41:48,027 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-15 05:41:48,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-15 05:41:48,027 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-15 05:41:48,027 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-15 05:41:48,028 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-15 05:41:48,028 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-15 05:41:48,028 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-15 05:41:48,028 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 05:41:48,028 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-15 05:41:48,028 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-15 05:41:48,029 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-15 05:41:48,029 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [166129333] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:41:48,029 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:41:48,029 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 5, 5] total 10 [2022-04-15 05:41:48,030 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:48,030 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [258520941] [2022-04-15 05:41:48,030 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [258520941] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:48,030 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:48,030 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 05:41:48,030 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [491899719] [2022-04-15 05:41:48,030 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:48,031 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-15 05:41:48,032 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:48,032 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-15 05:41:48,052 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-15 05:41:48,052 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 05:41:48,052 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:48,053 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 05:41:48,053 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-15 05:41:48,053 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-15 05:41:48,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:48,413 INFO L93 Difference]: Finished difference Result 130 states and 165 transitions. [2022-04-15 05:41:48,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 05:41:48,414 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-15 05:41:48,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:48,414 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-15 05:41:48,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-15 05:41:48,416 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-15 05:41:48,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-15 05:41:48,418 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 93 transitions. [2022-04-15 05:41:48,505 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-15 05:41:48,507 INFO L225 Difference]: With dead ends: 130 [2022-04-15 05:41:48,507 INFO L226 Difference]: Without dead ends: 94 [2022-04-15 05:41:48,508 INFO L912 BasicCegarLoop]: 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-15 05:41:48,508 INFO L913 BasicCegarLoop]: 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-15 05:41:48,508 INFO L914 BasicCegarLoop]: 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-15 05:41:48,509 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-15 05:41:48,538 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 68. [2022-04-15 05:41:48,538 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:48,539 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-15 05:41:48,539 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-15 05:41:48,539 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-15 05:41:48,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:48,542 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-15 05:41:48,543 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-15 05:41:48,543 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:48,543 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:48,543 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-15 05:41:48,544 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-15 05:41:48,546 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:48,547 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-15 05:41:48,547 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-15 05:41:48,547 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:48,547 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:48,547 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:48,547 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:48,547 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-15 05:41:48,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 84 transitions. [2022-04-15 05:41:48,549 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 84 transitions. Word has length 28 [2022-04-15 05:41:48,550 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:48,550 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 84 transitions. [2022-04-15 05:41:48,550 INFO L479 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-15 05:41:48,550 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 84 transitions. [2022-04-15 05:41:48,645 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-15 05:41:48,646 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 84 transitions. [2022-04-15 05:41:48,646 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 05:41:48,646 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:48,646 INFO L499 BasicCegarLoop]: 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-15 05:41:48,672 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-15 05:41:48,859 WARN L460 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-15 05:41:48,860 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:48,860 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:48,860 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 1 times [2022-04-15 05:41:48,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:48,860 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [530763309] [2022-04-15 05:41:48,863 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:41:48,863 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:41:48,863 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:41:48,864 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 2 times [2022-04-15 05:41:48,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:48,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [431284561] [2022-04-15 05:41:48,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:48,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:48,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:48,981 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:48,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:48,985 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-15 05:41:48,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-15 05:41:48,986 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-15 05:41:48,992 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-15 05:41:48,992 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-15 05:41:48,992 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-15 05:41:48,992 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-15 05:41:48,992 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-15 05:41:48,992 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-15 05:41:48,992 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-15 05:41:48,995 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-15 05:41:48,996 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-15 05:41:48,996 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-15 05:41:48,996 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-15 05:41:48,997 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-15 05:41:48,997 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-15 05:41:48,998 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-15 05:41:48,998 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-15 05:41:48,999 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-15 05:41:48,999 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-15 05:41:49,000 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-15 05:41:49,000 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-15 05:41:49,001 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-15 05:41:49,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,001 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-15 05:41:49,002 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,002 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-15 05:41:49,002 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-15 05:41:49,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-15 05:41:49,002 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-15 05:41:49,002 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-15 05:41:49,002 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-15 05:41:49,002 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:49,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [431284561] [2022-04-15 05:41:49,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [431284561] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:41:49,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1132137440] [2022-04-15 05:41:49,003 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:41:49,003 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:41:49,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:41:49,016 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-15 05:41:49,017 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-15 05:41:49,104 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:41:49,105 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:41:49,106 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-15 05:41:49,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:49,115 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:41:49,281 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-15 05:41:49,281 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-15 05:41:49,282 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-15 05:41:49,282 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-15 05:41:49,282 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-15 05:41:49,282 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-15 05:41:49,282 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-15 05:41:49,284 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-15 05:41:49,284 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-15 05:41:49,285 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-15 05:41:49,285 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-15 05:41:49,286 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-15 05:41:49,286 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-15 05:41:49,286 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-15 05:41:49,287 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-15 05:41:49,287 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-15 05:41:49,287 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-15 05:41:49,288 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-15 05:41:49,288 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-15 05:41:49,289 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-15 05:41:49,289 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,289 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-15 05:41:49,289 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,289 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-15 05:41:49,289 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-15 05:41:49,289 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-15 05:41:49,289 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-15 05:41:49,290 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-15 05:41:49,291 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-15 05:41:49,292 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:41:49,410 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-15 05:41:49,411 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-15 05:41:49,411 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-15 05:41:49,411 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-15 05:41:49,411 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-15 05:41:49,411 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,411 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-15 05:41:49,411 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-15 05:41:49,412 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-15 05:41:49,412 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-15 05:41:49,413 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-15 05:41:49,413 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-15 05:41:49,413 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-15 05:41:49,414 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-15 05:41:49,414 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-15 05:41:49,414 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-15 05:41:49,415 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-15 05:41:49,415 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-15 05:41:49,416 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-15 05:41:49,416 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-15 05:41:49,418 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-15 05:41:49,418 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-15 05:41:49,418 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-15 05:41:49,418 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-15 05:41:49,419 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-15 05:41:49,419 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-15 05:41:49,419 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-15 05:41:49,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-15 05:41:49,419 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-15 05:41:49,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1132137440] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:41:49,420 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:41:49,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-15 05:41:49,420 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:49,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [530763309] [2022-04-15 05:41:49,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [530763309] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:49,420 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:49,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 05:41:49,420 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1875552372] [2022-04-15 05:41:49,420 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:49,421 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-15 05:41:49,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:49,422 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-15 05:41:49,441 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-15 05:41:49,441 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 05:41:49,441 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:49,442 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 05:41:49,442 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-15 05:41:49,443 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-15 05:41:50,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:50,200 INFO L93 Difference]: Finished difference Result 178 states and 225 transitions. [2022-04-15 05:41:50,200 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 05:41:50,201 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-15 05:41:50,201 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:41:50,201 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-15 05:41:50,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-15 05:41:50,203 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-15 05:41:50,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-15 05:41:50,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 111 transitions. [2022-04-15 05:41:50,307 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-15 05:41:50,310 INFO L225 Difference]: With dead ends: 178 [2022-04-15 05:41:50,310 INFO L226 Difference]: Without dead ends: 148 [2022-04-15 05:41:50,310 INFO L912 BasicCegarLoop]: 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-15 05:41:50,311 INFO L913 BasicCegarLoop]: 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.2s IncrementalHoareTripleChecker+Time [2022-04-15 05:41:50,311 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [125 Valid, 68 Invalid, 267 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 212 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 05:41:50,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-04-15 05:41:50,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 87. [2022-04-15 05:41:50,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:41:50,434 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-15 05:41:50,434 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-15 05:41:50,434 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-15 05:41:50,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:50,441 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-15 05:41:50,441 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-15 05:41:50,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:50,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:50,442 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-15 05:41:50,442 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-15 05:41:50,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:41:50,448 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-15 05:41:50,448 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-15 05:41:50,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:41:50,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:41:50,449 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:41:50,449 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:41:50,449 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-15 05:41:50,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 110 transitions. [2022-04-15 05:41:50,452 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 110 transitions. Word has length 28 [2022-04-15 05:41:50,452 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:41:50,452 INFO L478 AbstractCegarLoop]: Abstraction has 87 states and 110 transitions. [2022-04-15 05:41:50,453 INFO L479 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-15 05:41:50,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 110 transitions. [2022-04-15 05:41:50,613 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-15 05:41:50,613 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 110 transitions. [2022-04-15 05:41:50,614 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-15 05:41:50,614 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:41:50,614 INFO L499 BasicCegarLoop]: 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-15 05:41:50,631 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-15 05:41:50,815 WARN L460 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-15 05:41:50,816 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:41:50,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:41:50,816 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 1 times [2022-04-15 05:41:50,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:50,817 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1090044642] [2022-04-15 05:41:50,885 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:41:50,885 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:41:50,885 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:41:50,885 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 2 times [2022-04-15 05:41:50,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:41:50,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1897644382] [2022-04-15 05:41:50,885 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:41:50,886 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:41:50,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:51,325 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:41:51,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:51,329 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-15 05:41:51,330 INFO L290 TraceCheckUtils]: 1: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-15 05:41:51,330 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-15 05:41:51,333 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-15 05:41:51,333 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-15 05:41:51,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-15 05:41:51,333 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-15 05:41:51,333 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-15 05:41:51,333 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-15 05:41:51,334 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-15 05:41:51,337 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-15 05:41:51,343 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-15 05:41:51,344 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-15 05:41:51,345 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-15 05:41:51,345 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-15 05:41:51,345 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-15 05:41:51,346 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-15 05:41:51,347 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-15 05:41:51,347 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-15 05:41:51,348 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-15 05:41:51,348 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-15 05:41:51,349 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-15 05:41:51,349 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-15 05:41:51,349 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-15 05:41:51,350 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-15 05:41:51,351 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-15 05:41:51,351 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-15 05:41:51,351 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-15 05:41:51,352 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-15 05:41:51,352 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-15 05:41:51,353 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-15 05:41:51,353 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-15 05:41:51,353 INFO L290 TraceCheckUtils]: 29: Hoare triple {3452#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3438#false} is VALID [2022-04-15 05:41:51,354 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-15 05:41:51,354 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-15 05:41:51,354 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:41:51,354 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1897644382] [2022-04-15 05:41:51,354 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1897644382] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:41:51,354 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [656424110] [2022-04-15 05:41:51,354 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:41:51,355 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:41:51,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:41:51,356 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-15 05:41:51,370 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-15 05:41:51,450 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:41:51,450 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:41:51,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 05:41:51,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:41:51,466 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:41:51,530 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-15 05:41:51,657 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-15 05:41:52,007 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-15 05:41:52,007 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-15 05:41:52,703 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-15 05:41:52,789 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-15 05:41:52,789 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-15 05:41:52,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-15 05:41:52,790 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-15 05:41:52,790 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-15 05:41:52,790 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-15 05:41:52,790 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-15 05:41:52,793 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-15 05:41:52,794 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-15 05:41:52,795 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-15 05:41:52,796 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-15 05:41:52,796 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-15 05:41:52,798 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-15 05:41:52,800 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-15 05:41:52,801 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-15 05:41:52,802 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-15 05:41:52,804 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-15 05:41:52,805 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-15 05:41:52,806 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-15 05:41:52,808 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-15 05:41:52,810 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-15 05:41:52,811 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-15 05:41:52,811 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-15 05:41:52,812 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-15 05:41:52,813 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-15 05:41:52,816 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-15 05:41:52,817 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-15 05:41:52,818 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-15 05:41:52,818 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:41:52,819 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-15 05:41:52,819 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-15 05:41:52,819 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-15 05:41:52,819 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:41:55,107 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-15 05:41:55,603 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-15 05:41:59,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-15 05:41:59,369 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-15 05:41:59,369 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:41:59,370 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-15 05:41:59,370 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-15 05:41:59,371 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-15 05:41:59,371 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-15 05:41:59,372 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-15 05:41:59,372 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-15 05:41:59,372 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-15 05:41:59,373 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-15 05:41:59,373 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-15 05:41:59,374 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-15 05:41:59,374 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-15 05:41:59,374 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-15 05:41:59,375 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-15 05:41:59,377 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-15 05:41:59,378 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-15 05:41:59,378 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-15 05:41:59,379 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-15 05:41:59,379 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-15 05:41:59,380 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-15 05:41:59,381 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-15 05:41:59,385 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-15 05:41:59,385 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-15 05:41:59,385 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-15 05:41:59,385 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-15 05:41:59,385 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-15 05:41:59,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-15 05:41:59,386 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-15 05:41:59,386 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-15 05:41:59,386 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-15 05:41:59,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [656424110] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:41:59,386 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:41:59,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 11, 11] total 29 [2022-04-15 05:41:59,386 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:41:59,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1090044642] [2022-04-15 05:41:59,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1090044642] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:41:59,387 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:41:59,387 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 05:41:59,387 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [229892232] [2022-04-15 05:41:59,387 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:41:59,387 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-15 05:41:59,388 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:41:59,389 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-15 05:41:59,417 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-15 05:41:59,417 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 05:41:59,418 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:41:59,418 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 05:41:59,419 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=598, Unknown=2, NotChecked=102, Total=812 [2022-04-15 05:41:59,419 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-15 05:42:01,148 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:01,149 INFO L93 Difference]: Finished difference Result 177 states and 227 transitions. [2022-04-15 05:42:01,149 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 05:42:01,149 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-15 05:42:01,149 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:01,149 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-15 05:42:01,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-15 05:42:01,152 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-15 05:42:01,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-15 05:42:01,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 140 transitions. [2022-04-15 05:42:01,301 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-15 05:42:01,304 INFO L225 Difference]: With dead ends: 177 [2022-04-15 05:42:01,304 INFO L226 Difference]: Without dead ends: 175 [2022-04-15 05:42:01,305 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 332 ImplicationChecksByTransitivity, 5.7s TimeCoverageRelationStatistics Valid=314, Invalid=1252, Unknown=2, NotChecked=154, Total=1722 [2022-04-15 05:42:01,305 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 187 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 411 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s 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.5s IncrementalHoareTripleChecker+Time [2022-04-15 05:42:01,305 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [188 Valid, 59 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 411 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 05:42:01,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-15 05:42:01,436 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 89. [2022-04-15 05:42:01,436 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:01,436 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-15 05:42:01,437 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-15 05:42:01,437 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-15 05:42:01,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:01,442 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-15 05:42:01,442 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-15 05:42:01,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:01,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:01,443 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-15 05:42:01,444 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-15 05:42:01,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:01,448 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-15 05:42:01,448 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-15 05:42:01,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:01,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:01,449 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:01,449 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:01,449 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-15 05:42:01,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 114 transitions. [2022-04-15 05:42:01,451 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 114 transitions. Word has length 31 [2022-04-15 05:42:01,452 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:01,452 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 114 transitions. [2022-04-15 05:42:01,452 INFO L479 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-15 05:42:01,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 114 transitions. [2022-04-15 05:42:01,612 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-15 05:42:01,613 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 114 transitions. [2022-04-15 05:42:01,613 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-15 05:42:01,613 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:01,613 INFO L499 BasicCegarLoop]: 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-15 05:42:01,630 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-15 05:42:01,815 WARN L460 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-15 05:42:01,815 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:01,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:01,816 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 3 times [2022-04-15 05:42:01,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:01,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1878415930] [2022-04-15 05:42:01,820 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:01,820 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:01,820 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:01,820 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 4 times [2022-04-15 05:42:01,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:01,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [66238881] [2022-04-15 05:42:01,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:01,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:01,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:02,016 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:02,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:02,021 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-15 05:42:02,022 INFO L290 TraceCheckUtils]: 1: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-15 05:42:02,022 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-15 05:42:02,022 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-15 05:42:02,022 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-15 05:42:02,022 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-15 05:42:02,023 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-15 05:42:02,023 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-15 05:42:02,023 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-15 05:42:02,023 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-15 05:42:02,025 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-15 05:42:02,026 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-15 05:42:02,026 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-15 05:42:02,027 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-15 05:42:02,027 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-15 05:42:02,028 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-15 05:42:02,028 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-15 05:42:02,029 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-15 05:42:02,029 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-15 05:42:02,030 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-15 05:42:02,030 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-15 05:42:02,031 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-15 05:42:02,031 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-15 05:42:02,031 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-15 05:42:02,032 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-15 05:42:02,032 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-15 05:42:02,032 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-15 05:42:02,033 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-15 05:42:02,033 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-15 05:42:02,034 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-15 05:42:02,034 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-15 05:42:02,034 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-15 05:42:02,035 INFO L290 TraceCheckUtils]: 29: Hoare triple {4574#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4563#false} is VALID [2022-04-15 05:42:02,035 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-15 05:42:02,035 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-15 05:42:02,035 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:02,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [66238881] [2022-04-15 05:42:02,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [66238881] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:02,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1508874650] [2022-04-15 05:42:02,036 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 05:42:02,036 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:02,036 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:02,037 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-15 05:42:02,045 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-15 05:42:02,097 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 05:42:02,097 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:02,098 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-15 05:42:02,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:02,111 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:02,157 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-15 05:42:02,234 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-15 05:42:02,234 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-15 05:42:03,562 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-15 05:42:03,562 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-15 05:42:03,675 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-15 05:42:03,677 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-15 05:42:03,677 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-15 05:42:03,677 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-15 05:42:03,677 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-15 05:42:03,677 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-15 05:42:03,677 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-15 05:42:03,677 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-15 05:42:03,677 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-15 05:42:03,678 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-15 05:42:03,679 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-15 05:42:03,679 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-15 05:42:03,680 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-15 05:42:03,682 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-15 05:42:03,683 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-15 05:42:03,683 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-15 05:42:03,684 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-15 05:42:03,685 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-15 05:42:03,686 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-15 05:42:03,687 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-15 05:42:03,688 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-15 05:42:03,689 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-15 05:42:03,692 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-15 05:42:03,693 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-15 05:42:03,694 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-15 05:42:03,695 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-15 05:42:03,695 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-15 05:42:03,696 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-15 05:42:03,696 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:42:03,697 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-15 05:42:03,697 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-15 05:42:03,697 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-15 05:42:03,697 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:42:04,437 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-15 05:42:04,437 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-15 05:42:04,438 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:42:04,438 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-15 05:42:04,439 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-15 05:42:04,439 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-15 05:42:04,439 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-15 05:42:04,440 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-15 05:42:04,440 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-15 05:42:04,441 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-15 05:42:04,441 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-15 05:42:04,441 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-15 05:42:04,442 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-15 05:42:04,442 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-15 05:42:04,445 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-15 05:42:04,445 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-15 05:42:04,447 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-15 05:42:04,448 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-15 05:42:04,448 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-15 05:42:04,449 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-15 05:42:04,449 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-15 05:42:04,450 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-15 05:42:04,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-15 05:42:04,450 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-15 05:42:04,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-15 05:42:04,450 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-15 05:42:04,450 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-15 05:42:04,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-15 05:42:04,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-15 05:42:04,451 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-15 05:42:04,451 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-15 05:42:04,451 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-15 05:42:04,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1508874650] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:42:04,451 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:42:04,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 16, 16] total 35 [2022-04-15 05:42:04,452 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:04,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1878415930] [2022-04-15 05:42:04,452 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1878415930] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:04,452 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:04,452 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 05:42:04,452 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1787766189] [2022-04-15 05:42:04,452 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:04,452 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-15 05:42:04,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:04,453 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-15 05:42:04,486 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-15 05:42:04,486 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 05:42:04,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:04,487 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 05:42:04,487 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=995, Unknown=0, NotChecked=0, Total=1190 [2022-04-15 05:42:04,488 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-15 05:42:05,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:05,771 INFO L93 Difference]: Finished difference Result 218 states and 287 transitions. [2022-04-15 05:42:05,771 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 05:42:05,771 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-15 05:42:05,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:05,771 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-15 05:42:05,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-15 05:42:05,773 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-15 05:42:05,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-15 05:42:05,775 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 120 transitions. [2022-04-15 05:42:05,900 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-15 05:42:05,904 INFO L225 Difference]: With dead ends: 218 [2022-04-15 05:42:05,904 INFO L226 Difference]: Without dead ends: 216 [2022-04-15 05:42:05,905 INFO L912 BasicCegarLoop]: 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-15 05:42:05,906 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 121 mSDsluCounter, 38 mSDsCounter, 0 mSdLazyCounter, 419 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s 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.4s IncrementalHoareTripleChecker+Time [2022-04-15 05:42:05,906 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [122 Valid, 66 Invalid, 467 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 419 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 05:42:05,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-04-15 05:42:06,064 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 112. [2022-04-15 05:42:06,064 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:06,065 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-15 05:42:06,065 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-15 05:42:06,066 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-15 05:42:06,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:06,071 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-15 05:42:06,071 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-15 05:42:06,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:06,072 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:06,072 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-15 05:42:06,073 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-15 05:42:06,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:06,078 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-15 05:42:06,078 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-15 05:42:06,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:06,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:06,079 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:06,079 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:06,079 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-15 05:42:06,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 148 transitions. [2022-04-15 05:42:06,082 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 148 transitions. Word has length 31 [2022-04-15 05:42:06,082 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:06,082 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 148 transitions. [2022-04-15 05:42:06,082 INFO L479 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-15 05:42:06,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 148 transitions. [2022-04-15 05:42:06,302 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-15 05:42:06,303 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 148 transitions. [2022-04-15 05:42:06,303 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 05:42:06,303 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:06,303 INFO L499 BasicCegarLoop]: 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-15 05:42:06,319 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-15 05:42:06,507 WARN L460 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-15 05:42:06,508 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:06,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:06,508 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 1 times [2022-04-15 05:42:06,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:06,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [881581415] [2022-04-15 05:42:06,510 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:06,510 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:06,510 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:06,510 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 2 times [2022-04-15 05:42:06,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:06,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [846724464] [2022-04-15 05:42:06,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:06,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:06,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:06,606 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:06,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:06,610 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-15 05:42:06,610 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,610 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-15 05:42:06,611 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-15 05:42:06,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:06,618 INFO L290 TraceCheckUtils]: 0: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-15 05:42:06,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-15 05:42:06,618 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,619 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-15 05:42:06,619 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-15 05:42:06,619 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-15 05:42:06,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,620 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-15 05:42:06,620 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-15 05:42:06,620 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-15 05:42:06,620 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-15 05:42:06,620 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-15 05:42:06,620 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-15 05:42:06,621 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-15 05:42:06,621 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-15 05:42:06,621 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-15 05:42:06,622 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:06,622 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-15 05:42:06,622 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-15 05:42:06,623 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-15 05:42:06,623 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-15 05:42:06,623 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:06,623 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-15 05:42:06,624 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-15 05:42:06,624 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-15 05:42:06,624 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-15 05:42:06,624 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-15 05:42:06,625 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-15 05:42:06,625 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,625 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-15 05:42:06,625 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-15 05:42:06,626 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-15 05:42:06,626 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-15 05:42:06,626 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-15 05:42:06,626 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-15 05:42:06,626 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-15 05:42:06,626 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-15 05:42:06,627 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-15 05:42:06,627 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:06,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [846724464] [2022-04-15 05:42:06,627 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [846724464] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:06,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1576275229] [2022-04-15 05:42:06,627 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:42:06,627 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:06,627 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:06,632 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-15 05:42:06,659 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-15 05:42:06,713 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:42:06,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:06,714 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-15 05:42:06,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:06,725 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:06,878 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-15 05:42:06,879 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-15 05:42:06,879 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,879 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-15 05:42:06,879 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-15 05:42:06,879 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-15 05:42:06,879 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-15 05:42:06,880 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-15 05:42:06,881 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-15 05:42:06,881 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-15 05:42:06,881 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-15 05:42:06,882 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-15 05:42:06,882 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:06,883 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-15 05:42:06,883 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-15 05:42:06,883 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-15 05:42:06,883 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-15 05:42:06,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:06,884 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-15 05:42:06,884 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-15 05:42:06,885 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-15 05:42:06,885 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-15 05:42:06,885 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-15 05:42:06,885 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-15 05:42:06,885 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:06,885 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-15 05:42:06,886 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-15 05:42:06,886 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-15 05:42:06,887 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-15 05:42:06,887 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-15 05:42:06,887 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-15 05:42:06,887 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-15 05:42:06,887 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-15 05:42:06,887 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-15 05:42:06,887 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:42:07,027 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-15 05:42:07,027 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-15 05:42:07,028 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-15 05:42:07,028 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-15 05:42:07,028 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-15 05:42:07,028 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-15 05:42:07,029 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-15 05:42:07,029 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-15 05:42:07,029 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:07,029 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-15 05:42:07,029 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-15 05:42:07,030 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-15 05:42:07,030 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-15 05:42:07,030 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-15 05:42:07,030 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-15 05:42:07,031 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:07,031 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-15 05:42:07,031 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-15 05:42:07,031 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-15 05:42:07,032 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-15 05:42:07,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-15 05:42:07,032 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-15 05:42:07,033 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-15 05:42:07,033 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-15 05:42:07,033 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-15 05:42:07,035 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-15 05:42:07,035 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-15 05:42:07,035 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-15 05:42:07,035 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-15 05:42:07,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-15 05:42:07,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-15 05:42:07,035 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-15 05:42:07,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-15 05:42:07,036 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-15 05:42:07,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1576275229] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:42:07,036 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:42:07,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-15 05:42:07,036 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:07,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [881581415] [2022-04-15 05:42:07,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [881581415] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:07,036 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:07,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 05:42:07,036 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1803268953] [2022-04-15 05:42:07,036 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:07,037 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-15 05:42:07,038 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:07,038 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-15 05:42:07,061 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-15 05:42:07,062 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 05:42:07,062 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:07,062 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 05:42:07,062 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-15 05:42:07,062 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-15 05:42:07,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:07,952 INFO L93 Difference]: Finished difference Result 254 states and 333 transitions. [2022-04-15 05:42:07,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 05:42:07,953 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-15 05:42:07,953 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:07,953 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-15 05:42:07,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-15 05:42:07,956 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-15 05:42:07,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-15 05:42:07,966 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 136 transitions. [2022-04-15 05:42:08,089 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-15 05:42:08,094 INFO L225 Difference]: With dead ends: 254 [2022-04-15 05:42:08,094 INFO L226 Difference]: Without dead ends: 185 [2022-04-15 05:42:08,095 INFO L912 BasicCegarLoop]: 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-15 05:42:08,097 INFO L913 BasicCegarLoop]: 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-15 05:42:08,097 INFO L914 BasicCegarLoop]: 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-15 05:42:08,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-15 05:42:08,310 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 131. [2022-04-15 05:42:08,310 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:08,311 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-15 05:42:08,312 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-15 05:42:08,312 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-15 05:42:08,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:08,316 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-15 05:42:08,316 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-15 05:42:08,316 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:08,316 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:08,316 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-15 05:42:08,317 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-15 05:42:08,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:08,320 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-15 05:42:08,320 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-15 05:42:08,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:08,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:08,321 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:08,321 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:08,321 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-15 05:42:08,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 172 transitions. [2022-04-15 05:42:08,323 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 172 transitions. Word has length 33 [2022-04-15 05:42:08,323 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:08,324 INFO L478 AbstractCegarLoop]: Abstraction has 131 states and 172 transitions. [2022-04-15 05:42:08,324 INFO L479 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-15 05:42:08,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 172 transitions. [2022-04-15 05:42:08,574 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-15 05:42:08,574 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 172 transitions. [2022-04-15 05:42:08,575 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 05:42:08,575 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:08,575 INFO L499 BasicCegarLoop]: 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-15 05:42:08,593 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-15 05:42:08,779 WARN L460 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-15 05:42:08,779 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:08,780 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:08,780 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 3 times [2022-04-15 05:42:08,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:08,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1157441759] [2022-04-15 05:42:08,782 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:08,782 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:08,782 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:08,782 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 4 times [2022-04-15 05:42:08,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:08,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1114636072] [2022-04-15 05:42:08,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:08,782 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:08,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:08,864 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:08,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:08,869 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-15 05:42:08,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-15 05:42:08,870 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-15 05:42:08,870 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-15 05:42:08,870 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-15 05:42:08,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-15 05:42:08,871 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-15 05:42:08,871 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-15 05:42:08,871 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-15 05:42:08,871 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-15 05:42:08,871 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-15 05:42:08,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:08,871 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-15 05:42:08,871 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-15 05:42:08,871 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:08,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-15 05:42:08,872 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-15 05:42:08,872 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-15 05:42:08,873 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-15 05:42:08,873 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-15 05:42:08,874 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-15 05:42:08,874 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-15 05:42:08,875 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-15 05:42:08,875 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-15 05:42:08,875 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-15 05:42:08,876 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-15 05:42:08,876 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-15 05:42:08,877 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-15 05:42:08,877 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-15 05:42:08,878 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-15 05:42:08,878 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-15 05:42:08,878 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-15 05:42:08,878 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-15 05:42:08,879 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-15 05:42:08,879 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-15 05:42:08,879 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-15 05:42:08,879 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-15 05:42:08,880 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-15 05:42:08,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:08,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1114636072] [2022-04-15 05:42:08,880 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1114636072] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:08,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1806012862] [2022-04-15 05:42:08,880 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 05:42:08,880 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:08,880 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:08,881 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-15 05:42:08,883 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-15 05:42:08,946 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 05:42:08,946 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:08,947 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-15 05:42:08,956 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:08,957 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:09,105 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-15 05:42:09,105 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-15 05:42:09,105 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-15 05:42:09,105 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-15 05:42:09,105 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-15 05:42:09,105 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-15 05:42:09,105 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-15 05:42:09,105 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-15 05:42:09,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:09,106 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-15 05:42:09,106 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-15 05:42:09,106 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:09,106 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-15 05:42:09,108 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-15 05:42:09,109 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-15 05:42:09,109 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-15 05:42:09,109 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-15 05:42:09,110 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-15 05:42:09,110 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-15 05:42:09,111 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-15 05:42:09,111 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-15 05:42:09,111 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-15 05:42:09,111 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-15 05:42:09,112 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-15 05:42:09,112 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-15 05:42:09,113 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-15 05:42:09,113 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-15 05:42:09,113 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-15 05:42:09,113 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-15 05:42:09,113 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-15 05:42:09,114 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-15 05:42:09,114 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-15 05:42:09,114 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-15 05:42:09,114 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-15 05:42:09,114 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-15 05:42:09,114 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:42:09,241 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-15 05:42:09,241 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-15 05:42:09,241 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-15 05:42:09,241 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-15 05:42:09,241 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-15 05:42:09,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-15 05:42:09,242 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-15 05:42:09,242 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-15 05:42:09,242 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-15 05:42:09,243 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-15 05:42:09,255 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-15 05:42:09,256 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-15 05:42:09,256 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-15 05:42:09,256 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-15 05:42:09,257 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-15 05:42:09,257 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-15 05:42:09,258 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-15 05:42:09,258 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-15 05:42:09,258 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-15 05:42:09,259 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-15 05:42:09,259 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-15 05:42:09,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-15 05:42:09,259 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:09,259 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-15 05:42:09,259 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-15 05:42:09,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-15 05:42:09,259 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-15 05:42:09,259 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-15 05:42:09,259 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-15 05:42:09,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-15 05:42:09,260 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-15 05:42:09,260 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-15 05:42:09,260 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-15 05:42:09,260 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-15 05:42:09,260 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-15 05:42:09,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1806012862] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:42:09,260 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:42:09,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-15 05:42:09,261 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:09,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1157441759] [2022-04-15 05:42:09,261 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1157441759] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:09,261 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:09,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 05:42:09,261 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1588800383] [2022-04-15 05:42:09,261 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:09,262 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-15 05:42:09,262 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:09,262 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-15 05:42:09,300 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-15 05:42:09,300 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 05:42:09,300 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:09,301 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 05:42:09,301 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-15 05:42:09,301 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-15 05:42:10,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:10,512 INFO L93 Difference]: Finished difference Result 240 states and 310 transitions. [2022-04-15 05:42:10,512 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 05:42:10,512 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-15 05:42:10,513 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:10,513 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-15 05:42:10,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-15 05:42:10,514 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-15 05:42:10,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-15 05:42:10,515 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 104 transitions. [2022-04-15 05:42:10,600 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-15 05:42:10,604 INFO L225 Difference]: With dead ends: 240 [2022-04-15 05:42:10,604 INFO L226 Difference]: Without dead ends: 219 [2022-04-15 05:42:10,605 INFO L912 BasicCegarLoop]: 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-15 05:42:10,605 INFO L913 BasicCegarLoop]: 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-15 05:42:10,605 INFO L914 BasicCegarLoop]: 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-15 05:42:10,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-15 05:42:10,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 174. [2022-04-15 05:42:10,999 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:11,000 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-15 05:42:11,000 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-15 05:42:11,001 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-15 05:42:11,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:11,005 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-15 05:42:11,005 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-15 05:42:11,006 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:11,006 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:11,006 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-15 05:42:11,006 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-15 05:42:11,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:11,011 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-15 05:42:11,011 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-15 05:42:11,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:11,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:11,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:11,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:11,012 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-15 05:42:11,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 229 transitions. [2022-04-15 05:42:11,015 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 229 transitions. Word has length 34 [2022-04-15 05:42:11,015 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:11,015 INFO L478 AbstractCegarLoop]: Abstraction has 174 states and 229 transitions. [2022-04-15 05:42:11,016 INFO L479 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-15 05:42:11,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 174 states and 229 transitions. [2022-04-15 05:42:11,401 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-15 05:42:11,401 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 229 transitions. [2022-04-15 05:42:11,401 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 05:42:11,401 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:11,401 INFO L499 BasicCegarLoop]: 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-15 05:42:11,417 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-15 05:42:11,603 WARN L460 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-15 05:42:11,603 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:11,604 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:11,604 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 5 times [2022-04-15 05:42:11,604 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:11,604 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1393835676] [2022-04-15 05:42:11,611 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:11,611 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:11,611 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:11,611 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 6 times [2022-04-15 05:42:11,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:11,612 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1128295237] [2022-04-15 05:42:11,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:11,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:11,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:11,658 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:11,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:11,662 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-15 05:42:11,662 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-15 05:42:11,662 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-15 05:42:11,662 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-15 05:42:11,662 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-15 05:42:11,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-15 05:42:11,663 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-15 05:42:11,663 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-15 05:42:11,663 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-15 05:42:11,663 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-15 05:42:11,665 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-15 05:42:11,665 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-15 05:42:11,666 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-15 05:42:11,666 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-15 05:42:11,667 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-15 05:42:11,667 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-15 05:42:11,667 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-15 05:42:11,667 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,667 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-15 05:42:11,667 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-15 05:42:11,667 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,668 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-15 05:42:11,668 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,668 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-15 05:42:11,668 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,668 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,668 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-15 05:42:11,668 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-15 05:42:11,669 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-15 05:42:11,669 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-15 05:42:11,669 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-15 05:42:11,669 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-15 05:42:11,669 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:11,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1128295237] [2022-04-15 05:42:11,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1128295237] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:11,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [169541900] [2022-04-15 05:42:11,669 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 05:42:11,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:11,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:11,670 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-15 05:42:11,700 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-15 05:42:11,769 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2022-04-15 05:42:11,769 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:11,770 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-15 05:42:11,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:11,785 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:11,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-15 05:42:11,891 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-15 05:42:11,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-15 05:42:11,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-15 05:42:11,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-15 05:42:11,891 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-15 05:42:11,891 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-15 05:42:11,893 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-15 05:42:11,893 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-15 05:42:11,893 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-15 05:42:11,894 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-15 05:42:11,894 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-15 05:42:11,895 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-15 05:42:11,895 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-15 05:42:11,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,895 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-15 05:42:11,895 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-15 05:42:11,895 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,895 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,895 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,895 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,895 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-15 05:42:11,895 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,895 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,895 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-15 05:42:11,896 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-15 05:42:11,896 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,896 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-15 05:42:11,896 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-15 05:42:11,896 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-15 05:42:11,896 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-15 05:42:11,896 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-15 05:42:11,896 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-15 05:42:11,896 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-15 05:42:11,896 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-15 05:42:11,896 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 05:42:11,896 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [169541900] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:11,896 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 05:42:11,896 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 7 [2022-04-15 05:42:11,897 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:11,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1393835676] [2022-04-15 05:42:11,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1393835676] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:11,897 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:11,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 05:42:11,897 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1518201792] [2022-04-15 05:42:11,897 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:11,897 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-15 05:42:11,898 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:11,898 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-15 05:42:11,917 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-15 05:42:11,917 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 05:42:11,917 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:11,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 05:42:11,917 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-15 05:42:11,918 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-15 05:42:12,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:12,466 INFO L93 Difference]: Finished difference Result 292 states and 382 transitions. [2022-04-15 05:42:12,466 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 05:42:12,467 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-15 05:42:12,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:12,467 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-15 05:42:12,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-15 05:42:12,468 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-15 05:42:12,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-15 05:42:12,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 88 transitions. [2022-04-15 05:42:12,544 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-15 05:42:12,546 INFO L225 Difference]: With dead ends: 292 [2022-04-15 05:42:12,547 INFO L226 Difference]: Without dead ends: 154 [2022-04-15 05:42:12,550 INFO L912 BasicCegarLoop]: 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-15 05:42:12,550 INFO L913 BasicCegarLoop]: 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-15 05:42:12,551 INFO L914 BasicCegarLoop]: 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-15 05:42:12,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-04-15 05:42:13,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 139. [2022-04-15 05:42:13,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:13,010 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-15 05:42:13,011 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-15 05:42:13,011 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-15 05:42:13,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:13,014 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-15 05:42:13,014 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-15 05:42:13,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:13,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:13,015 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-15 05:42:13,015 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-15 05:42:13,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:13,018 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-15 05:42:13,018 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-15 05:42:13,018 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:13,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:13,018 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:13,018 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:13,018 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-15 05:42:13,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 175 transitions. [2022-04-15 05:42:13,021 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 175 transitions. Word has length 34 [2022-04-15 05:42:13,021 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:13,021 INFO L478 AbstractCegarLoop]: Abstraction has 139 states and 175 transitions. [2022-04-15 05:42:13,021 INFO L479 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-15 05:42:13,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 139 states and 175 transitions. [2022-04-15 05:42:13,292 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-15 05:42:13,292 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 175 transitions. [2022-04-15 05:42:13,292 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 05:42:13,292 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:13,292 INFO L499 BasicCegarLoop]: 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-15 05:42:13,310 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-15 05:42:13,493 WARN L460 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-15 05:42:13,493 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:13,493 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:13,493 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 7 times [2022-04-15 05:42:13,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:13,493 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [982712118] [2022-04-15 05:42:13,497 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:13,497 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:13,497 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:13,497 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 8 times [2022-04-15 05:42:13,497 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:13,497 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1291650229] [2022-04-15 05:42:13,497 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:13,497 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:13,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:13,584 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:13,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:13,588 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-15 05:42:13,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-15 05:42:13,589 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-15 05:42:13,589 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-15 05:42:13,589 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-15 05:42:13,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-15 05:42:13,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-15 05:42:13,590 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-15 05:42:13,590 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-15 05:42:13,590 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-15 05:42:13,590 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-15 05:42:13,590 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-15 05:42:13,591 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-15 05:42:13,591 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-15 05:42:13,591 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-15 05:42:13,592 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-15 05:42:13,592 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-15 05:42:13,593 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-15 05:42:13,593 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-15 05:42:13,593 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-15 05:42:13,593 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-15 05:42:13,594 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-15 05:42:13,594 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-15 05:42:13,595 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-15 05:42:13,595 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-15 05:42:13,595 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-15 05:42:13,596 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-15 05:42:13,596 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-15 05:42:13,596 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-15 05:42:13,597 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:13,597 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-15 05:42:13,597 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:13,597 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-15 05:42:13,597 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-15 05:42:13,597 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-15 05:42:13,597 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-15 05:42:13,597 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-15 05:42:13,597 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-15 05:42:13,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:13,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1291650229] [2022-04-15 05:42:13,598 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1291650229] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:13,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1101749369] [2022-04-15 05:42:13,598 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:42:13,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:13,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:13,599 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-15 05:42:13,626 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-15 05:42:13,685 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:42:13,685 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:13,686 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 05:42:13,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:13,695 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:13,873 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-15 05:42:13,873 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-15 05:42:13,873 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-15 05:42:13,874 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-15 05:42:13,874 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-15 05:42:13,874 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-15 05:42:13,874 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-15 05:42:13,875 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-15 05:42:13,876 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-15 05:42:13,876 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-15 05:42:13,876 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-15 05:42:13,877 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-15 05:42:13,877 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-15 05:42:13,877 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-15 05:42:13,878 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-15 05:42:13,878 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-15 05:42:13,878 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-15 05:42:13,878 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-15 05:42:13,879 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-15 05:42:13,879 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-15 05:42:13,879 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-15 05:42:13,880 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-15 05:42:13,880 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-15 05:42:13,880 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-15 05:42:13,881 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-15 05:42:13,881 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-15 05:42:13,881 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:13,881 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-15 05:42:13,881 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:13,882 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-15 05:42:13,882 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-15 05:42:13,882 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-15 05:42:13,882 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-15 05:42:13,882 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-15 05:42:13,882 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-15 05:42:13,882 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:42:14,022 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-15 05:42:14,022 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-15 05:42:14,022 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-15 05:42:14,022 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-15 05:42:14,022 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-15 05:42:14,022 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:14,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-15 05:42:14,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-15 05:42:14,023 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-15 05:42:14,023 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-15 05:42:14,024 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-15 05:42:14,024 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-15 05:42:14,024 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-15 05:42:14,024 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-15 05:42:14,025 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-15 05:42:14,025 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-15 05:42:14,025 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-15 05:42:14,026 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-15 05:42:14,026 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-15 05:42:14,026 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-15 05:42:14,027 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-15 05:42:14,027 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-15 05:42:14,027 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-15 05:42:14,028 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-15 05:42:14,028 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-15 05:42:14,028 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-15 05:42:14,030 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-15 05:42:14,030 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-15 05:42:14,030 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-15 05:42:14,030 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-15 05:42:14,030 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-15 05:42:14,030 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-15 05:42:14,030 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-15 05:42:14,030 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-15 05:42:14,030 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-15 05:42:14,030 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1101749369] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:42:14,030 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:42:14,030 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-15 05:42:14,031 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:14,031 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [982712118] [2022-04-15 05:42:14,031 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [982712118] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:14,031 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:14,031 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 05:42:14,031 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1629241248] [2022-04-15 05:42:14,031 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:14,031 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-15 05:42:14,031 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:14,032 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-15 05:42:14,054 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-15 05:42:14,054 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 05:42:14,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:14,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 05:42:14,054 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=155, Unknown=0, NotChecked=0, Total=210 [2022-04-15 05:42:14,055 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-15 05:42:16,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:16,068 INFO L93 Difference]: Finished difference Result 296 states and 374 transitions. [2022-04-15 05:42:16,068 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 05:42:16,069 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-15 05:42:16,069 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:16,069 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-15 05:42:16,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-15 05:42:16,071 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-15 05:42:16,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-15 05:42:16,072 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 151 transitions. [2022-04-15 05:42:16,234 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-15 05:42:16,240 INFO L225 Difference]: With dead ends: 296 [2022-04-15 05:42:16,240 INFO L226 Difference]: Without dead ends: 275 [2022-04-15 05:42:16,241 INFO L912 BasicCegarLoop]: 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-15 05:42:16,241 INFO L913 BasicCegarLoop]: 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-15 05:42:16,241 INFO L914 BasicCegarLoop]: 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-15 05:42:16,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2022-04-15 05:42:16,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 154. [2022-04-15 05:42:16,774 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:42:16,775 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-15 05:42:16,775 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-15 05:42:16,776 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-15 05:42:16,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:16,781 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-15 05:42:16,781 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-15 05:42:16,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:16,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:16,782 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-15 05:42:16,783 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-15 05:42:16,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:16,788 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-15 05:42:16,788 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-15 05:42:16,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:42:16,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:42:16,789 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:42:16,789 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:42:16,789 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-15 05:42:16,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 195 transitions. [2022-04-15 05:42:16,792 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 195 transitions. Word has length 34 [2022-04-15 05:42:16,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:42:16,792 INFO L478 AbstractCegarLoop]: Abstraction has 154 states and 195 transitions. [2022-04-15 05:42:16,792 INFO L479 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-15 05:42:16,792 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 154 states and 195 transitions. [2022-04-15 05:42:17,106 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-15 05:42:17,106 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 195 transitions. [2022-04-15 05:42:17,107 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-15 05:42:17,107 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:42:17,107 INFO L499 BasicCegarLoop]: 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-15 05:42:17,124 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-15 05:42:17,311 WARN L460 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-15 05:42:17,312 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:42:17,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:42:17,312 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 5 times [2022-04-15 05:42:17,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:17,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1302295953] [2022-04-15 05:42:17,314 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:42:17,314 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:42:17,314 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:42:17,314 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 6 times [2022-04-15 05:42:17,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:42:17,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [515383493] [2022-04-15 05:42:17,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:42:17,314 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:42:17,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:18,074 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:42:18,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:18,077 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-15 05:42:18,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-15 05:42:18,077 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-15 05:42:18,077 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-15 05:42:18,078 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-15 05:42:18,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-15 05:42:18,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-15 05:42:18,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-15 05:42:18,078 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-15 05:42:18,078 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-15 05:42:18,080 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-15 05:42:18,081 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-15 05:42:18,081 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-15 05:42:18,082 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-15 05:42:18,082 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-15 05:42:18,083 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-15 05:42:18,083 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-15 05:42:18,084 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-15 05:42:18,085 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-15 05:42:18,085 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-15 05:42:18,087 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-15 05:42:18,088 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-15 05:42:18,089 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-15 05:42:18,089 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-15 05:42:18,090 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-15 05:42:18,090 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-15 05:42:18,091 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-15 05:42:18,092 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-15 05:42:18,092 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-15 05:42:18,093 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-15 05:42:18,093 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-15 05:42:18,094 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-15 05:42:18,094 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-15 05:42:18,095 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-15 05:42:18,095 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-15 05:42:18,096 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-15 05:42:18,096 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-15 05:42:18,097 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-15 05:42:18,097 INFO L290 TraceCheckUtils]: 35: Hoare triple {11753#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {11736#false} is VALID [2022-04-15 05:42:18,097 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-15 05:42:18,098 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-15 05:42:18,098 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:42:18,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [515383493] [2022-04-15 05:42:18,098 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [515383493] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:42:18,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1740106239] [2022-04-15 05:42:18,098 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 05:42:18,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:42:18,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:42:18,101 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-15 05:42:18,111 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-15 05:42:18,203 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-15 05:42:18,203 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:42:18,204 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-15 05:42:18,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:42:18,218 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:42:18,282 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-15 05:42:18,425 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,426 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,426 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,428 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-15 05:42:18,740 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,741 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,742 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,742 INFO L173 IndexEqualityManager]: detected equality via solver [2022-04-15 05:42:18,743 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:42:18,752 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-15 05:42:18,752 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-15 05:42:19,082 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-15 05:42:19,082 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-15 05:42:20,114 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-15 05:42:20,240 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-15 05:42:20,240 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-15 05:42:20,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-15 05:42:20,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-15 05:42:20,241 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-15 05:42:20,241 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-15 05:42:20,241 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-15 05:42:20,243 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-15 05:42:20,244 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-15 05:42:20,244 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-15 05:42:20,245 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-15 05:42:20,245 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-15 05:42:20,246 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-15 05:42:20,246 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-15 05:42:20,247 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-15 05:42:20,248 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-15 05:42:20,248 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-15 05:42:20,249 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-15 05:42:20,250 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-15 05:42:20,251 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-15 05:42:20,252 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-15 05:42:20,252 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-15 05:42:20,253 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-15 05:42:20,254 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-15 05:42:20,255 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-15 05:42:20,255 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-15 05:42:20,256 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-15 05:42:20,257 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-15 05:42:20,258 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-15 05:42:20,258 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-15 05:42:20,259 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-15 05:42:20,260 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-15 05:42:20,260 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-15 05:42:20,261 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-15 05:42:20,261 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:42:20,261 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-15 05:42:20,261 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-15 05:42:20,262 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-15 05:42:20,262 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:42:22,548 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-15 05:42:22,999 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-15 05:42:45,244 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-15 05:42:47,439 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-15 05:42:50,948 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-15 05:42:52,212 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-15 05:42:52,213 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-15 05:42:52,213 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:42:52,214 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-15 05:42:52,214 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-15 05:42:52,214 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-15 05:42:52,215 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-15 05:42:52,215 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-15 05:42:52,215 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-15 05:42:52,215 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-15 05:42:52,216 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-15 05:42:52,216 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-15 05:42:52,216 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-15 05:42:52,217 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-15 05:42:52,217 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-15 05:42:52,217 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-15 05:42:52,217 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-15 05:42:52,218 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-15 05:42:52,218 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-15 05:42:52,220 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-15 05:42:52,221 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-15 05:42:52,222 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-15 05:42:52,224 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-15 05:42:52,225 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-15 05:42:52,226 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-15 05:42:52,226 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-15 05:42:52,227 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-15 05:42:52,228 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-15 05:42:52,230 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-15 05:42:52,233 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-15 05:42:52,234 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-15 05:42:52,234 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-15 05:42:52,234 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-15 05:42:52,235 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-15 05:42:52,235 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-15 05:42:52,235 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-15 05:42:52,235 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-15 05:42:52,236 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-15 05:42:52,236 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1740106239] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:42:52,236 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:42:52,236 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 14] total 37 [2022-04-15 05:42:52,236 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:42:52,236 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1302295953] [2022-04-15 05:42:52,236 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1302295953] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:42:52,236 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:42:52,236 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-15 05:42:52,236 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2141870986] [2022-04-15 05:42:52,237 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:42:52,237 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-15 05:42:52,237 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:42:52,237 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-15 05:42:52,288 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-15 05:42:52,289 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-15 05:42:52,289 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:42:52,289 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-15 05:42:52,289 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=849, Unknown=27, NotChecked=320, Total=1332 [2022-04-15 05:42:52,290 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-15 05:42:59,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:42:59,531 INFO L93 Difference]: Finished difference Result 187 states and 232 transitions. [2022-04-15 05:42:59,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 05:42:59,532 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-15 05:42:59,532 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:42:59,532 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-15 05:42:59,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-15 05:42:59,533 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-15 05:42:59,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-15 05:42:59,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 89 transitions. [2022-04-15 05:42:59,618 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-15 05:42:59,620 INFO L225 Difference]: With dead ends: 187 [2022-04-15 05:42:59,620 INFO L226 Difference]: Without dead ends: 164 [2022-04-15 05:42:59,621 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 55 SyntacticMatches, 2 SemanticMatches, 47 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 427 ImplicationChecksByTransitivity, 34.1s TimeCoverageRelationStatistics Valid=276, Invalid=1603, Unknown=33, NotChecked=440, Total=2352 [2022-04-15 05:42:59,621 INFO L913 BasicCegarLoop]: 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-15 05:42:59,621 INFO L914 BasicCegarLoop]: 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-15 05:42:59,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-15 05:43:00,119 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 157. [2022-04-15 05:43:00,119 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:43:00,120 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-15 05:43:00,123 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-15 05:43:00,124 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-15 05:43:00,126 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:00,126 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-15 05:43:00,126 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-15 05:43:00,127 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:00,127 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:00,127 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-15 05:43:00,129 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-15 05:43:00,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:00,133 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-15 05:43:00,133 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-15 05:43:00,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:00,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:00,133 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:43:00,133 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:43:00,134 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-15 05:43:00,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 199 transitions. [2022-04-15 05:43:00,137 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 199 transitions. Word has length 37 [2022-04-15 05:43:00,137 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:43:00,137 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 199 transitions. [2022-04-15 05:43:00,137 INFO L479 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-15 05:43:00,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 199 transitions. [2022-04-15 05:43:00,551 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-15 05:43:00,551 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 199 transitions. [2022-04-15 05:43:00,551 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-15 05:43:00,551 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:43:00,552 INFO L499 BasicCegarLoop]: 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-15 05:43:00,576 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-15 05:43:00,752 WARN L460 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-15 05:43:00,752 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:43:00,753 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:43:00,753 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 1 times [2022-04-15 05:43:00,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:00,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [899971718] [2022-04-15 05:43:00,755 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:43:00,756 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:43:00,756 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:43:00,756 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 2 times [2022-04-15 05:43:00,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:43:00,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [111725010] [2022-04-15 05:43:00,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:43:00,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:43:00,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:00,821 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:43:00,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:00,825 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-15 05:43:00,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-15 05:43:00,825 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-15 05:43:00,826 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-15 05:43:00,826 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-15 05:43:00,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-15 05:43:00,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-15 05:43:00,826 INFO L272 TraceCheckUtils]: 4: Hoare triple {13036#true} call #t~ret22 := main(); {13036#true} is VALID [2022-04-15 05:43:00,826 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-15 05:43:00,826 INFO L290 TraceCheckUtils]: 6: Hoare triple {13036#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {13036#true} is VALID [2022-04-15 05:43:00,826 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-15 05:43:00,826 INFO L290 TraceCheckUtils]: 8: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-15 05:43:00,826 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-15 05:43:00,826 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-15 05:43:00,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-15 05:43:00,827 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-15 05:43:00,827 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-15 05:43:00,827 INFO L290 TraceCheckUtils]: 14: Hoare triple {13036#true} assume !(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-15 05:43:00,827 INFO L290 TraceCheckUtils]: 15: Hoare triple {13036#true} ~i~0 := 0; {13036#true} is VALID [2022-04-15 05:43:00,827 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-15 05:43:00,828 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-15 05:43:00,828 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-15 05:43:00,828 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-15 05:43:00,829 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-15 05:43:00,829 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-15 05:43:00,829 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-15 05:43:00,829 INFO L290 TraceCheckUtils]: 23: Hoare triple {13037#false} assume !(~j~0 < ~edgecount~0); {13037#false} is VALID [2022-04-15 05:43:00,829 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-15 05:43:00,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {13037#false} assume !(~i~0 < ~nodecount~0); {13037#false} is VALID [2022-04-15 05:43:00,829 INFO L290 TraceCheckUtils]: 26: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-15 05:43:00,829 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-15 05:43:00,830 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-15 05:43:00,830 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-15 05:43:00,830 INFO L290 TraceCheckUtils]: 30: Hoare triple {13037#false} assume !(~i~0 < ~edgecount~0); {13037#false} is VALID [2022-04-15 05:43:00,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-15 05:43:00,830 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-15 05:43:00,830 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-15 05:43:00,830 INFO L290 TraceCheckUtils]: 34: Hoare triple {13037#false} ~cond := #in~cond; {13037#false} is VALID [2022-04-15 05:43:00,830 INFO L290 TraceCheckUtils]: 35: Hoare triple {13037#false} assume 0 == ~cond; {13037#false} is VALID [2022-04-15 05:43:00,830 INFO L290 TraceCheckUtils]: 36: Hoare triple {13037#false} assume !false; {13037#false} is VALID [2022-04-15 05:43:00,830 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-15 05:43:00,831 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:43:00,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [111725010] [2022-04-15 05:43:00,831 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [111725010] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:43:00,831 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:43:00,831 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 05:43:00,831 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:43:00,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [899971718] [2022-04-15 05:43:00,831 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [899971718] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:43:00,831 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:43:00,831 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 05:43:00,831 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [992222431] [2022-04-15 05:43:00,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:43:00,833 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-15 05:43:00,833 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:43:00,833 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-15 05:43:00,857 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-15 05:43:00,857 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 05:43:00,857 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:00,858 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 05:43:00,858 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 05:43:00,859 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-15 05:43:01,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:01,739 INFO L93 Difference]: Finished difference Result 247 states and 314 transitions. [2022-04-15 05:43:01,739 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 05:43:01,740 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-15 05:43:01,740 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:43:01,740 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-15 05:43:01,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-15 05:43:01,741 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-15 05:43:01,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-15 05:43:01,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 83 transitions. [2022-04-15 05:43:01,816 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-15 05:43:01,819 INFO L225 Difference]: With dead ends: 247 [2022-04-15 05:43:01,819 INFO L226 Difference]: Without dead ends: 177 [2022-04-15 05:43:01,819 INFO L912 BasicCegarLoop]: 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-15 05:43:01,820 INFO L913 BasicCegarLoop]: 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-15 05:43:01,820 INFO L914 BasicCegarLoop]: 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-15 05:43:01,820 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-15 05:43:02,451 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 157. [2022-04-15 05:43:02,451 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:43:02,451 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-15 05:43:02,452 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-15 05:43:02,452 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-15 05:43:02,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:02,456 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-15 05:43:02,456 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-15 05:43:02,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:02,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:02,457 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-15 05:43:02,457 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-15 05:43:02,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:02,460 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-15 05:43:02,460 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-15 05:43:02,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:02,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:02,460 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:43:02,460 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:43:02,460 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-15 05:43:02,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 196 transitions. [2022-04-15 05:43:02,463 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 196 transitions. Word has length 37 [2022-04-15 05:43:02,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:43:02,463 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 196 transitions. [2022-04-15 05:43:02,463 INFO L479 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-15 05:43:02,463 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 196 transitions. [2022-04-15 05:43:02,809 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-15 05:43:02,809 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 196 transitions. [2022-04-15 05:43:02,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-15 05:43:02,810 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:43:02,810 INFO L499 BasicCegarLoop]: 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-15 05:43:02,810 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-04-15 05:43:02,810 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:43:02,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:43:02,810 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 9 times [2022-04-15 05:43:02,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:02,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [974981824] [2022-04-15 05:43:02,814 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:43:02,814 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:43:02,814 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:43:02,814 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 10 times [2022-04-15 05:43:02,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:43:02,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [591903542] [2022-04-15 05:43:02,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:43:02,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:43:02,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:02,997 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:43:02,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:03,000 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-15 05:43:03,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-15 05:43:03,001 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-15 05:43:03,001 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-15 05:43:03,001 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-15 05:43:03,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-15 05:43:03,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-15 05:43:03,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-15 05:43:03,001 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-15 05:43:03,001 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-15 05:43:03,003 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-15 05:43:03,004 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-15 05:43:03,004 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-15 05:43:03,004 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-15 05:43:03,005 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-15 05:43:03,005 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-15 05:43:03,006 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-15 05:43:03,006 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-15 05:43:03,007 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-15 05:43:03,007 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-15 05:43:03,008 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-15 05:43:03,008 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-15 05:43:03,008 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-15 05:43:03,009 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-15 05:43:03,009 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-15 05:43:03,009 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-15 05:43:03,010 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-15 05:43:03,010 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-15 05:43:03,010 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-15 05:43:03,011 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-15 05:43:03,011 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-15 05:43:03,011 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-15 05:43:03,012 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-15 05:43:03,012 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-15 05:43:03,012 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-15 05:43:03,013 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-15 05:43:03,013 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-15 05:43:03,014 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-15 05:43:03,014 INFO L290 TraceCheckUtils]: 35: Hoare triple {14226#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {14214#false} is VALID [2022-04-15 05:43:03,014 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-15 05:43:03,014 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-15 05:43:03,014 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:43:03,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [591903542] [2022-04-15 05:43:03,014 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [591903542] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:43:03,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2050357267] [2022-04-15 05:43:03,015 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 05:43:03,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:43:03,015 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:43:03,019 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-15 05:43:03,019 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-15 05:43:03,082 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 05:43:03,082 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:43:03,083 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-15 05:43:03,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:03,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:43:03,143 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-15 05:43:03,199 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-15 05:43:03,199 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-15 05:43:03,262 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-15 05:43:03,262 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-15 05:43:04,823 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-15 05:43:04,823 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-15 05:43:04,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-15 05:43:04,918 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-15 05:43:04,918 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-15 05:43:04,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-15 05:43:04,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-15 05:43:04,918 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-15 05:43:04,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-15 05:43:04,918 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-15 05:43:04,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-15 05:43:04,919 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-15 05:43:04,920 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-15 05:43:04,921 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-15 05:43:04,921 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-15 05:43:04,922 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-15 05:43:04,923 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-15 05:43:04,923 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-15 05:43:04,925 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-15 05:43:04,925 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-15 05:43:04,926 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-15 05:43:04,927 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-15 05:43:04,927 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-15 05:43:04,928 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-15 05:43:04,929 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-15 05:43:04,929 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-15 05:43:04,930 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-15 05:43:04,931 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-15 05:43:04,934 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-15 05:43:04,935 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-15 05:43:04,936 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-15 05:43:04,937 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-15 05:43:04,937 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-15 05:43:04,938 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-15 05:43:04,938 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-15 05:43:04,939 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-15 05:43:04,939 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:43:04,939 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-15 05:43:04,940 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-15 05:43:04,940 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-15 05:43:04,940 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:43:05,784 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-15 05:43:05,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-15 05:43:05,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:43:05,787 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-15 05:43:05,787 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-15 05:43:05,788 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-15 05:43:05,788 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-15 05:43:05,788 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-15 05:43:05,789 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-15 05:43:05,789 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-15 05:43:05,790 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-15 05:43:05,790 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-15 05:43:05,791 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-15 05:43:05,791 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-15 05:43:05,791 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-15 05:43:05,792 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-15 05:43:05,792 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-15 05:43:05,792 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-15 05:43:05,793 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-15 05:43:05,793 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-15 05:43:05,794 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-15 05:43:05,794 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-15 05:43:05,795 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-15 05:43:05,795 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-15 05:43:05,796 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-15 05:43:05,796 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-15 05:43:05,797 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-15 05:43:05,799 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-15 05:43:05,799 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-15 05:43:05,799 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-15 05:43:05,800 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-15 05:43:05,800 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-15 05:43:05,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-15 05:43:05,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-15 05:43:05,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-15 05:43:05,800 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-15 05:43:05,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-15 05:43:05,800 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-15 05:43:05,800 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2050357267] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:43:05,800 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:43:05,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 18, 18] total 40 [2022-04-15 05:43:05,801 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:43:05,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [974981824] [2022-04-15 05:43:05,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [974981824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:43:05,801 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:43:05,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 05:43:05,801 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [645358106] [2022-04-15 05:43:05,801 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:43:05,802 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-15 05:43:05,802 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:43:05,802 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-15 05:43:05,825 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-15 05:43:05,825 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 05:43:05,825 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:05,826 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 05:43:05,826 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=244, Invalid=1316, Unknown=0, NotChecked=0, Total=1560 [2022-04-15 05:43:05,827 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-15 05:43:07,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:07,527 INFO L93 Difference]: Finished difference Result 237 states and 298 transitions. [2022-04-15 05:43:07,527 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 05:43:07,527 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-15 05:43:07,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:43:07,527 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-15 05:43:07,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-15 05:43:07,528 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-15 05:43:07,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-15 05:43:07,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 87 transitions. [2022-04-15 05:43:07,621 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-15 05:43:07,624 INFO L225 Difference]: With dead ends: 237 [2022-04-15 05:43:07,624 INFO L226 Difference]: Without dead ends: 235 [2022-04-15 05:43:07,625 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 46 SyntacticMatches, 3 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 578 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=335, Invalid=1827, Unknown=0, NotChecked=0, Total=2162 [2022-04-15 05:43:07,626 INFO L913 BasicCegarLoop]: 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-15 05:43:07,626 INFO L914 BasicCegarLoop]: 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-15 05:43:07,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 235 states. [2022-04-15 05:43:08,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 235 to 162. [2022-04-15 05:43:08,213 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:43:08,213 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-15 05:43:08,214 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-15 05:43:08,214 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-15 05:43:08,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:08,218 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-15 05:43:08,218 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-15 05:43:08,218 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:08,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:08,218 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-15 05:43:08,219 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-15 05:43:08,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:08,223 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-15 05:43:08,223 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-15 05:43:08,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:08,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:08,224 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:43:08,224 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:43:08,224 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-15 05:43:08,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 203 transitions. [2022-04-15 05:43:08,227 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 203 transitions. Word has length 37 [2022-04-15 05:43:08,227 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:43:08,227 INFO L478 AbstractCegarLoop]: Abstraction has 162 states and 203 transitions. [2022-04-15 05:43:08,227 INFO L479 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-15 05:43:08,227 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 162 states and 203 transitions. [2022-04-15 05:43:08,626 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-15 05:43:08,626 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 203 transitions. [2022-04-15 05:43:08,627 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 05:43:08,627 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:43:08,627 INFO L499 BasicCegarLoop]: 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-15 05:43:08,653 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-15 05:43:08,847 WARN L460 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-15 05:43:08,848 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:43:08,848 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:43:08,848 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 1 times [2022-04-15 05:43:08,848 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:08,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [484516357] [2022-04-15 05:43:08,852 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:43:08,852 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:43:08,852 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:43:08,852 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 2 times [2022-04-15 05:43:08,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:43:08,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [538378945] [2022-04-15 05:43:08,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:43:08,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:43:08,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:09,021 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:43:09,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:09,027 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-15 05:43:09,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:09,028 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:09,028 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-15 05:43:09,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:09,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-15 05:43:09,032 INFO L290 TraceCheckUtils]: 1: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-15 05:43:09,032 INFO L290 TraceCheckUtils]: 2: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-15 05:43:09,032 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-15 05:43:09,033 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-15 05:43:09,034 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-15 05:43:09,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:09,037 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:09,037 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:09,037 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-15 05:43:09,038 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-15 05:43:09,040 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-15 05:43:09,040 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-15 05:43:09,041 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-15 05:43:09,041 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-15 05:43:09,042 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-15 05:43:09,043 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-15 05:43:09,043 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-15 05:43:09,044 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-15 05:43:09,044 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-15 05:43:09,044 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-15 05:43:09,045 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-15 05:43:09,045 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-15 05:43:09,046 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-15 05:43:09,046 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-15 05:43:09,047 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-15 05:43:09,047 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-15 05:43:09,048 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-15 05:43:09,048 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-15 05:43:09,049 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-15 05:43:09,049 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-15 05:43:09,049 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-15 05:43:09,049 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-15 05:43:09,049 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-15 05:43:09,049 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-15 05:43:09,050 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-15 05:43:09,051 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-15 05:43:09,051 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-15 05:43:09,052 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-15 05:43:09,052 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-15 05:43:09,053 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-15 05:43:09,053 INFO L290 TraceCheckUtils]: 37: Hoare triple {15777#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {15760#false} is VALID [2022-04-15 05:43:09,053 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-15 05:43:09,053 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-15 05:43:09,054 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:43:09,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [538378945] [2022-04-15 05:43:09,054 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [538378945] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:43:09,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1339419123] [2022-04-15 05:43:09,054 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:43:09,054 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:43:09,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:43:09,055 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-15 05:43:09,087 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-15 05:43:09,169 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:43:09,169 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:43:09,171 INFO L263 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 05:43:09,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:09,182 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:43:09,308 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-15 05:43:11,579 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-15 05:43:11,631 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-15 05:43:11,632 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-15 05:43:11,632 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:11,632 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:11,633 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-15 05:43:11,633 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-15 05:43:11,633 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-15 05:43:11,635 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-15 05:43:11,635 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-15 05:43:11,636 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-15 05:43:11,636 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-15 05:43:11,636 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-15 05:43:11,637 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-15 05:43:11,637 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-15 05:43:11,638 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-15 05:43:11,638 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-15 05:43:11,638 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-15 05:43:11,639 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-15 05:43:11,639 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-15 05:43:11,639 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-15 05:43:11,640 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-15 05:43:11,640 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-15 05:43:11,640 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-15 05:43:11,641 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-15 05:43:11,641 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-15 05:43:11,641 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-15 05:43:11,642 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-15 05:43:11,643 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-15 05:43:11,643 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-15 05:43:11,644 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-15 05:43:11,644 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-15 05:43:11,645 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-15 05:43:11,645 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-15 05:43:11,646 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-15 05:43:11,646 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-15 05:43:11,647 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-15 05:43:11,647 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:43:11,647 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-15 05:43:11,647 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-15 05:43:11,648 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-15 05:43:11,648 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:43:13,903 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-15 05:43:13,917 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-15 05:43:14,137 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-15 05:43:14,138 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-15 05:43:14,138 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:43:14,139 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-15 05:43:14,139 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-15 05:43:14,140 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-15 05:43:14,141 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-15 05:43:14,141 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-15 05:43:14,141 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-15 05:43:14,141 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-15 05:43:14,142 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-15 05:43:14,142 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-15 05:43:14,142 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-15 05:43:14,143 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-15 05:43:14,143 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-15 05:43:14,143 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-15 05:43:14,144 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-15 05:43:14,144 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-15 05:43:14,145 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-15 05:43:14,145 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-15 05:43:14,146 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-15 05:43:14,146 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-15 05:43:14,146 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-15 05:43:14,147 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-15 05:43:14,147 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-15 05:43:14,148 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-15 05:43:14,148 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-15 05:43:14,149 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-15 05:43:14,149 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-15 05:43:14,150 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-15 05:43:14,151 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-15 05:43:14,153 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-15 05:43:14,153 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-15 05:43:14,154 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-15 05:43:14,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {16003#(<= 0 ~INFINITY~0)} call #t~ret22 := main(); {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-15 05:43:14,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16003#(<= 0 ~INFINITY~0)} {15759#true} #123#return; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-15 05:43:14,155 INFO L290 TraceCheckUtils]: 2: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume true; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-15 05:43:14,155 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-15 05:43:14,155 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-15 05:43:14,156 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-15 05:43:14,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1339419123] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:43:14,156 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:43:14,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 11] total 28 [2022-04-15 05:43:14,156 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:43:14,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [484516357] [2022-04-15 05:43:14,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [484516357] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:43:14,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:43:14,157 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 05:43:14,157 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [350376538] [2022-04-15 05:43:14,157 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:43:14,157 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-15 05:43:14,157 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:43:14,157 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-15 05:43:14,189 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-15 05:43:14,189 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 05:43:14,189 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:14,189 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 05:43:14,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=654, Unknown=2, NotChecked=0, Total=756 [2022-04-15 05:43:14,190 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-15 05:43:16,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:16,505 INFO L93 Difference]: Finished difference Result 232 states and 291 transitions. [2022-04-15 05:43:16,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 05:43:16,505 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-15 05:43:16,505 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:43:16,505 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-15 05:43:16,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-15 05:43:16,507 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-15 05:43:16,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-15 05:43:16,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-15 05:43:16,635 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-15 05:43:16,638 INFO L225 Difference]: With dead ends: 232 [2022-04-15 05:43:16,638 INFO L226 Difference]: Without dead ends: 230 [2022-04-15 05:43:16,639 INFO L912 BasicCegarLoop]: 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-15 05:43:16,639 INFO L913 BasicCegarLoop]: 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-15 05:43:16,640 INFO L914 BasicCegarLoop]: 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-15 05:43:16,640 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-15 05:43:17,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 170. [2022-04-15 05:43:17,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:43:17,411 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-15 05:43:17,411 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-15 05:43:17,411 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-15 05:43:17,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:17,418 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-15 05:43:17,418 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-15 05:43:17,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:17,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:17,419 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-15 05:43:17,419 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-15 05:43:17,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:17,422 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-15 05:43:17,422 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-15 05:43:17,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:17,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:17,422 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:43:17,422 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:43:17,422 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-15 05:43:17,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 211 transitions. [2022-04-15 05:43:17,424 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 211 transitions. Word has length 39 [2022-04-15 05:43:17,424 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:43:17,424 INFO L478 AbstractCegarLoop]: Abstraction has 170 states and 211 transitions. [2022-04-15 05:43:17,424 INFO L479 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-15 05:43:17,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 170 states and 211 transitions. [2022-04-15 05:43:17,828 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-15 05:43:17,828 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-15 05:43:17,829 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-15 05:43:17,829 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:43:17,829 INFO L499 BasicCegarLoop]: 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-15 05:43:17,848 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-15 05:43:18,035 WARN L460 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-15 05:43:18,035 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:43:18,036 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:43:18,036 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 7 times [2022-04-15 05:43:18,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:18,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1501293721] [2022-04-15 05:43:18,037 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:43:18,037 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:43:18,038 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:43:18,038 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 8 times [2022-04-15 05:43:18,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:43:18,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [571117862] [2022-04-15 05:43:18,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:43:18,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:43:18,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:18,129 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:43:18,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:18,137 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-15 05:43:18,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-15 05:43:18,137 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-15 05:43:18,138 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-15 05:43:18,138 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-15 05:43:18,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-15 05:43:18,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-15 05:43:18,138 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-15 05:43:18,138 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-15 05:43:18,138 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-15 05:43:18,139 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-15 05:43:18,139 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,139 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-15 05:43:18,139 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-15 05:43:18,139 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,139 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-15 05:43:18,139 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-15 05:43:18,140 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-15 05:43:18,140 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-15 05:43:18,140 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-15 05:43:18,141 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-15 05:43:18,141 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-15 05:43:18,141 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-15 05:43:18,142 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-15 05:43:18,143 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-15 05:43:18,143 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-15 05:43:18,143 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-15 05:43:18,143 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-15 05:43:18,144 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-15 05:43:18,144 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-15 05:43:18,145 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-15 05:43:18,145 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-15 05:43:18,145 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-15 05:43:18,146 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-15 05:43:18,146 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-15 05:43:18,147 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-15 05:43:18,147 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-15 05:43:18,147 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-15 05:43:18,147 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-15 05:43:18,147 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-15 05:43:18,147 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-15 05:43:18,147 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-15 05:43:18,148 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-15 05:43:18,148 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-15 05:43:18,148 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:43:18,148 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [571117862] [2022-04-15 05:43:18,148 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [571117862] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:43:18,148 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [237611277] [2022-04-15 05:43:18,148 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 05:43:18,148 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:43:18,148 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:43:18,152 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-15 05:43:18,183 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-15 05:43:18,284 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 05:43:18,284 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:43:18,286 INFO L263 TraceCheckSpWp]: Trace formula consists of 357 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 05:43:18,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:18,304 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:43:18,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-15 05:43:18,515 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-15 05:43:18,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-15 05:43:18,519 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-15 05:43:18,519 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-15 05:43:18,519 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-15 05:43:18,519 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-15 05:43:18,519 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-15 05:43:18,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,519 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-15 05:43:18,520 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-15 05:43:18,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-15 05:43:18,527 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-15 05:43:18,528 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-15 05:43:18,528 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-15 05:43:18,529 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-15 05:43:18,529 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-15 05:43:18,530 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-15 05:43:18,530 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-15 05:43:18,531 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-15 05:43:18,532 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-15 05:43:18,532 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-15 05:43:18,532 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-15 05:43:18,533 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-15 05:43:18,533 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-15 05:43:18,534 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-15 05:43:18,534 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-15 05:43:18,535 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-15 05:43:18,535 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-15 05:43:18,536 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-15 05:43:18,537 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-15 05:43:18,537 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-15 05:43:18,538 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-15 05:43:18,538 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-15 05:43:18,538 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-15 05:43:18,538 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-15 05:43:18,538 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-15 05:43:18,538 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-15 05:43:18,538 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-15 05:43:18,539 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-15 05:43:18,539 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:43:18,700 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-15 05:43:18,700 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-15 05:43:18,700 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-15 05:43:18,700 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-15 05:43:18,700 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-15 05:43:18,700 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-15 05:43:18,701 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-15 05:43:18,701 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-15 05:43:18,701 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-15 05:43:18,702 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-15 05:43:18,702 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-15 05:43:18,702 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-15 05:43:18,703 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-15 05:43:18,703 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-15 05:43:18,703 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-15 05:43:18,704 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-15 05:43:18,704 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-15 05:43:18,704 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-15 05:43:18,704 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-15 05:43:18,705 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-15 05:43:18,705 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-15 05:43:18,706 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-15 05:43:18,706 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-15 05:43:18,706 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-15 05:43:18,707 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-15 05:43:18,707 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-15 05:43:18,707 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-15 05:43:18,707 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-15 05:43:18,708 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,708 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-15 05:43:18,708 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-15 05:43:18,708 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-15 05:43:18,708 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-15 05:43:18,708 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-15 05:43:18,708 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-15 05:43:18,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-15 05:43:18,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-15 05:43:18,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-15 05:43:18,708 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-15 05:43:18,708 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-15 05:43:18,709 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-15 05:43:18,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [237611277] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 05:43:18,709 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 05:43:18,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-15 05:43:18,709 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 05:43:18,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1501293721] [2022-04-15 05:43:18,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1501293721] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 05:43:18,709 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 05:43:18,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 05:43:18,710 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [567587287] [2022-04-15 05:43:18,710 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 05:43:18,710 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-15 05:43:18,710 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 05:43:18,710 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-15 05:43:18,744 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-15 05:43:18,744 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 05:43:18,744 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:18,745 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 05:43:18,745 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=157, Unknown=0, NotChecked=0, Total=210 [2022-04-15 05:43:18,745 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-15 05:43:21,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:21,737 INFO L93 Difference]: Finished difference Result 366 states and 463 transitions. [2022-04-15 05:43:21,737 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 05:43:21,737 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-15 05:43:21,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 05:43:21,737 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-15 05:43:21,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-15 05:43:21,739 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-15 05:43:21,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-15 05:43:21,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 136 transitions. [2022-04-15 05:43:21,856 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-15 05:43:21,864 INFO L225 Difference]: With dead ends: 366 [2022-04-15 05:43:21,865 INFO L226 Difference]: Without dead ends: 337 [2022-04-15 05:43:21,865 INFO L912 BasicCegarLoop]: 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-15 05:43:21,865 INFO L913 BasicCegarLoop]: 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-15 05:43:21,865 INFO L914 BasicCegarLoop]: 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-15 05:43:21,866 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states. [2022-04-15 05:43:23,020 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 227. [2022-04-15 05:43:23,020 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 05:43:23,021 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-15 05:43:23,021 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-15 05:43:23,021 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-15 05:43:23,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:23,032 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-15 05:43:23,032 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-15 05:43:23,033 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:23,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:23,033 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-15 05:43:23,034 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-15 05:43:23,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 05:43:23,040 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-15 05:43:23,040 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-15 05:43:23,040 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 05:43:23,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 05:43:23,040 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 05:43:23,040 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 05:43:23,040 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-15 05:43:23,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 227 states to 227 states and 290 transitions. [2022-04-15 05:43:23,043 INFO L78 Accepts]: Start accepts. Automaton has 227 states and 290 transitions. Word has length 40 [2022-04-15 05:43:23,043 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 05:43:23,043 INFO L478 AbstractCegarLoop]: Abstraction has 227 states and 290 transitions. [2022-04-15 05:43:23,044 INFO L479 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-15 05:43:23,044 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 227 states and 290 transitions. [2022-04-15 05:43:23,662 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-15 05:43:23,662 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 290 transitions. [2022-04-15 05:43:23,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-15 05:43:23,663 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 05:43:23,663 INFO L499 BasicCegarLoop]: 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-15 05:43:23,683 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-15 05:43:23,875 WARN L460 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-15 05:43:23,875 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 05:43:23,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 05:43:23,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 3 times [2022-04-15 05:43:23,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 05:43:23,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1627587723] [2022-04-15 05:43:23,879 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 05:43:23,879 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONINTEGER_UPDATE [2022-04-15 05:43:23,879 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 05:43:23,879 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 4 times [2022-04-15 05:43:23,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 05:43:23,879 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [948754993] [2022-04-15 05:43:23,879 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 05:43:23,880 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 05:43:23,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:24,540 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 05:43:24,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:24,544 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-15 05:43:24,544 INFO L290 TraceCheckUtils]: 1: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-15 05:43:24,544 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-15 05:43:24,544 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-15 05:43:24,545 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-15 05:43:24,545 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-15 05:43:24,545 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-15 05:43:24,545 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-15 05:43:24,545 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-15 05:43:24,545 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-15 05:43:24,548 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-15 05:43:24,548 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-15 05:43:24,549 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-15 05:43:24,549 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-15 05:43:24,549 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-15 05:43:24,550 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-15 05:43:24,551 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-15 05:43:24,551 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-15 05:43:24,551 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-15 05:43:24,552 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-15 05:43:24,552 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-15 05:43:24,553 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-15 05:43:24,553 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-15 05:43:24,554 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-15 05:43:24,554 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-15 05:43:24,555 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-15 05:43:24,555 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-15 05:43:24,556 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-15 05:43:24,556 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-15 05:43:24,564 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-15 05:43:24,564 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-15 05:43:24,565 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-15 05:43:24,565 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-15 05:43:24,566 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-15 05:43:24,566 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-15 05:43:24,566 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-15 05:43:24,567 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-15 05:43:24,567 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-15 05:43:24,568 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-15 05:43:24,568 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-15 05:43:24,568 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-15 05:43:24,569 INFO L290 TraceCheckUtils]: 38: Hoare triple {19473#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {19456#false} is VALID [2022-04-15 05:43:24,569 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-15 05:43:24,569 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-15 05:43:24,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 05:43:24,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [948754993] [2022-04-15 05:43:24,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [948754993] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 05:43:24,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [160124121] [2022-04-15 05:43:24,569 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 05:43:24,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 05:43:24,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 05:43:24,570 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-15 05:43:24,571 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-15 05:43:24,674 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 05:43:24,674 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 05:43:24,676 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-15 05:43:24,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 05:43:24,699 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 05:43:24,739 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-15 05:43:24,824 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-15 05:43:24,964 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-15 05:43:24,966 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-15 05:43:25,711 INFO L356 Elim1Store]: treesize reduction 22, result has 50.0 percent of original size [2022-04-15 05:43:25,711 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-15 05:43:27,070 INFO L356 Elim1Store]: treesize reduction 122, result has 40.5 percent of original size [2022-04-15 05:43:27,070 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-15 05:43:38,861 INFO L356 Elim1Store]: treesize reduction 23, result has 56.6 percent of original size [2022-04-15 05:43:38,861 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-15 05:43:39,292 INFO L272 TraceCheckUtils]: 0: Hoare triple {19455#true} call ULTIMATE.init(); {19455#true} is VALID [2022-04-15 05:43:39,293 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-15 05:43:39,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-15 05:43:39,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-15 05:43:39,293 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-15 05:43:39,293 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-15 05:43:39,293 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-15 05:43:39,296 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-15 05:43:39,297 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-15 05:43:39,298 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-15 05:43:39,299 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-15 05:43:39,299 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-15 05:43:39,300 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-15 05:43:39,301 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-15 05:43:39,302 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-15 05:43:39,303 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-15 05:43:39,304 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-15 05:43:39,306 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-15 05:43:39,307 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-15 05:43:39,309 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-15 05:43:39,311 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-15 05:43:39,313 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-15 05:43:39,315 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-15 05:43:39,317 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-15 05:43:39,325 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-15 05:43:39,327 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-15 05:43:39,329 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-15 05:43:39,332 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-15 05:43:39,334 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-15 05:43:39,336 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-15 05:43:39,353 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-15 05:43:39,357 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 (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} is VALID [2022-04-15 05:43:39,358 INFO L290 TraceCheckUtils]: 32: Hoare triple {19589#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {19589#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} is VALID [2022-04-15 05:43:39,359 INFO L290 TraceCheckUtils]: 33: Hoare triple {19589#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} assume !(~i~0 < ~edgecount~0); {19589#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} is VALID [2022-04-15 05:43:39,360 INFO L290 TraceCheckUtils]: 34: Hoare triple {19589#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0))} ~i~0 := 0; {19599#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 0) (= main_~i~0 0))} is VALID [2022-04-15 05:43:39,362 INFO L290 TraceCheckUtils]: 35: Hoare triple {19599#(and (exists ((|main_~#Weight~0.base| Int)) (and (exists ((|main_~#Dest~0.base| Int) (|main_~#Dest~0.offset| Int)) (and (= (+ (* (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)) (<= (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|)))) (< (+ (select (select |#memory_int| |main_~#Weight~0.base|) 0) (select (select |#memory_int| |main_~#distance~0.base|) (+ (- 4) |main_~#distance~0.offset|)) 1) 0) (not (= |main_~#Weight~0.base| |main_~#distance~0.base|)))) (= |main_~#distance~0.offset| 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); {19603#(< 0 (+ |main_#t~mem21| 1))} is VALID [2022-04-15 05:43:39,362 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-15 05:43:39,363 INFO L290 TraceCheckUtils]: 37: Hoare triple {19607#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19611#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 05:43:39,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {19611#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19456#false} is VALID [2022-04-15 05:43:39,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-15 05:43:39,364 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-15 05:43:39,364 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 05:44:46,011 WARN L232 SmtUtils]: Spent 6.47s on a formula simplification. DAG size of input: 33 DAG size of output: 22 (called from [L 353] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2022-04-15 05:44:46,013 INFO L356 Elim1Store]: treesize reduction 20, result has 59.2 percent of original size [2022-04-15 05:44:46,063 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