/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/loops/eureka_01-1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 08:59:28,490 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 08:59:28,492 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 08:59:28,538 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 08:59:28,539 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 08:59:28,539 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 08:59:28,541 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 08:59:28,542 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 08:59:28,544 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 08:59:28,544 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 08:59:28,545 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 08:59:28,546 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 08:59:28,547 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 08:59:28,547 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 08:59:28,548 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 08:59:28,549 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 08:59:28,550 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 08:59:28,551 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 08:59:28,552 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 08:59:28,553 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 08:59:28,555 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 08:59:28,555 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 08:59:28,556 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 08:59:28,557 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 08:59:28,558 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 08:59:28,560 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 08:59:28,561 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 08:59:28,561 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 08:59:28,561 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 08:59:28,562 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 08:59:28,562 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 08:59:28,563 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 08:59:28,563 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 08:59:28,564 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 08:59:28,564 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 08:59:28,565 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 08:59:28,565 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 08:59:28,566 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 08:59:28,566 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 08:59:28,566 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 08:59:28,567 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 08:59:28,568 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 08:59:28,568 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 08:59:28,576 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 08:59:28,576 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 08:59:28,577 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 08:59:28,577 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 08:59:28,577 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 08:59:28,578 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 08:59:28,578 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 08:59:28,578 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 08:59:28,578 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 08:59:28,578 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 08:59:28,579 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 08:59:28,579 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 08:59:28,579 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 08:59:28,579 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 08:59:28,579 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 08:59:28,580 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 08:59:28,580 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 08:59:28,580 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 08:59:28,580 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 08:59:28,580 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 08:59:28,580 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 08:59:28,581 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 08:59:28,581 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-08 08:59:28,796 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 08:59:28,820 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 08:59:28,822 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 08:59:28,823 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 08:59:28,825 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 08:59:28,826 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-08 08:59:28,873 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/60faca714/c7648901a9a14b6c8fa9c440f932d4d9/FLAG5188a793a [2022-04-08 08:59:29,241 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 08:59:29,242 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/eureka_01-1.c [2022-04-08 08:59:29,247 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/60faca714/c7648901a9a14b6c8fa9c440f932d4d9/FLAG5188a793a [2022-04-08 08:59:29,670 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/60faca714/c7648901a9a14b6c8fa9c440f932d4d9 [2022-04-08 08:59:29,672 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 08:59:29,673 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 08:59:29,675 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 08:59:29,676 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 08:59:29,678 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 08:59:29,679 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,680 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@45b9d517 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29, skipping insertion in model container [2022-04-08 08:59:29,680 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,688 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 08:59:29,700 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 08:59:29,817 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-08 08:59:29,846 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 08:59:29,864 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 08:59:29,874 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-08 08:59:29,894 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 08:59:29,911 INFO L208 MainTranslator]: Completed translation [2022-04-08 08:59:29,912 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29 WrapperNode [2022-04-08 08:59:29,912 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 08:59:29,913 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 08:59:29,913 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 08:59:29,913 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 08:59:29,926 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,926 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,937 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,938 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,957 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,962 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,963 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,965 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 08:59:29,966 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 08:59:29,966 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 08:59:29,966 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 08:59:29,967 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (1/1) ... [2022-04-08 08:59:29,976 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 08:59:29,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:29,996 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-08 08:59:30,020 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-08 08:59:30,041 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 08:59:30,041 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 08:59:30,041 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 08:59:30,041 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 08:59:30,042 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 08:59:30,042 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 08:59:30,042 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 08:59:30,042 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 08:59:30,042 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 08:59:30,042 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 08:59:30,042 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 08:59:30,043 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 08:59:30,044 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 08:59:30,044 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 08:59:30,112 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 08:59:30,114 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 08:59:30,433 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 08:59:30,444 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 08:59:30,444 INFO L299 CfgBuilder]: Removed 5 assume(true) statements. [2022-04-08 08:59:30,446 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 08:59:30 BoogieIcfgContainer [2022-04-08 08:59:30,446 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 08:59:30,447 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 08:59:30,447 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 08:59:30,453 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 08:59:30,453 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 08:59:29" (1/3) ... [2022-04-08 08:59:30,453 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1c34d46d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 08:59:30, skipping insertion in model container [2022-04-08 08:59:30,454 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 08:59:29" (2/3) ... [2022-04-08 08:59:30,454 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1c34d46d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 08:59:30, skipping insertion in model container [2022-04-08 08:59:30,454 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 08:59:30" (3/3) ... [2022-04-08 08:59:30,455 INFO L111 eAbstractionObserver]: Analyzing ICFG eureka_01-1.c [2022-04-08 08:59:30,459 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 08:59:30,459 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 08:59:30,490 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 08:59:30,495 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-08 08:59:30,495 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 08:59:30,510 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-08 08:59:30,516 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-08 08:59:30,516 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:30,516 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-08 08:59:30,517 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:30,520 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:30,521 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 1 times [2022-04-08 08:59:30,527 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:30,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1220052639] [2022-04-08 08:59:30,536 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 08:59:30,537 INFO L85 PathProgramCache]: Analyzing trace with hash -1703238628, now seen corresponding path program 2 times [2022-04-08 08:59:30,539 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:30,539 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [646433391] [2022-04-08 08:59:30,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:30,540 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:30,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:30,776 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:30,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:30,805 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-08 08:59:30,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 08:59:30,806 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-08 08:59:30,809 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-08 08:59:30,809 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-08 08:59:30,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 08:59:30,809 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #123#return; {40#true} is VALID [2022-04-08 08:59:30,809 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret22 := main(); {40#true} is VALID [2022-04-08 08:59:30,810 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-08 08:59:30,810 INFO L290 TraceCheckUtils]: 6: Hoare triple {40#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {40#true} is VALID [2022-04-08 08:59:30,815 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-08 08:59:30,816 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume !true; {41#false} is VALID [2022-04-08 08:59:30,816 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-08 08:59:30,817 INFO L290 TraceCheckUtils]: 10: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 08:59:30,817 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-08 08:59:30,818 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 08:59:30,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} ~i~0 := 0; {41#false} is VALID [2022-04-08 08:59:30,819 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-08 08:59:30,819 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-08 08:59:30,819 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-08 08:59:30,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-08 08:59:30,820 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-08 08:59:30,820 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-08 08:59:30,821 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:30,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [646433391] [2022-04-08 08:59:30,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [646433391] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:30,822 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:30,822 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 08:59:30,824 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:30,824 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1220052639] [2022-04-08 08:59:30,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1220052639] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:30,825 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:30,825 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 08:59:30,825 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [421743023] [2022-04-08 08:59:30,825 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:30,830 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-08 08:59:30,831 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:30,834 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-08 08:59:30,871 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-08 08:59:30,872 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 08:59:30,872 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:30,895 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 08:59:30,896 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 08:59:30,899 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-08 08:59:31,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,041 INFO L93 Difference]: Finished difference Result 63 states and 89 transitions. [2022-04-08 08:59:31,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 08:59:31,041 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-08 08:59:31,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:31,043 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-08 08:59:31,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-08 08:59:31,057 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-08 08:59:31,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-04-08 08:59:31,060 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 89 transitions. [2022-04-08 08:59:31,179 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-08 08:59:31,190 INFO L225 Difference]: With dead ends: 63 [2022-04-08 08:59:31,190 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 08:59:31,193 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-08 08:59:31,197 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-08 08:59:31,199 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-08 08:59:31,212 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 08:59:31,230 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 08:59:31,230 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:31,231 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-08 08:59:31,232 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-08 08:59:31,233 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-08 08:59:31,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,240 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-08 08:59:31,240 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-08 08:59:31,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:31,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:31,241 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-08 08:59:31,242 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-08 08:59:31,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,246 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-08 08:59:31,247 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-08 08:59:31,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:31,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:31,248 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:31,248 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:31,249 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-08 08:59:31,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 38 transitions. [2022-04-08 08:59:31,254 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 38 transitions. Word has length 19 [2022-04-08 08:59:31,259 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:31,259 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 38 transitions. [2022-04-08 08:59:31,260 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-08 08:59:31,260 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 38 transitions. [2022-04-08 08:59:31,313 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-08 08:59:31,313 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 38 transitions. [2022-04-08 08:59:31,314 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-08 08:59:31,314 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:31,314 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-08 08:59:31,314 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 08:59:31,315 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:31,317 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:31,317 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 1 times [2022-04-08 08:59:31,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:31,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [257211100] [2022-04-08 08:59:31,319 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 08:59:31,319 INFO L85 PathProgramCache]: Analyzing trace with hash -779965392, now seen corresponding path program 2 times [2022-04-08 08:59:31,319 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:31,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [926110360] [2022-04-08 08:59:31,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:31,320 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:31,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:31,444 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:31,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:31,451 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-08 08:59:31,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-08 08:59:31,451 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-08 08:59:31,452 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-08 08:59:31,452 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-08 08:59:31,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {302#true} assume true; {302#true} is VALID [2022-04-08 08:59:31,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {302#true} {302#true} #123#return; {302#true} is VALID [2022-04-08 08:59:31,453 INFO L272 TraceCheckUtils]: 4: Hoare triple {302#true} call #t~ret22 := main(); {302#true} is VALID [2022-04-08 08:59:31,453 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-08 08:59:31,453 INFO L290 TraceCheckUtils]: 6: Hoare triple {302#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {302#true} is VALID [2022-04-08 08:59:31,453 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-08 08:59:31,454 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-08 08:59:31,454 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-08 08:59:31,455 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-08 08:59:31,455 INFO L290 TraceCheckUtils]: 11: Hoare triple {308#(<= main_~nodecount~0 0)} ~i~0 := 0; {308#(<= main_~nodecount~0 0)} is VALID [2022-04-08 08:59:31,456 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-08 08:59:31,456 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-08 08:59:31,457 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-08 08:59:31,458 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-08 08:59:31,458 INFO L290 TraceCheckUtils]: 16: Hoare triple {303#false} ~cond := #in~cond; {303#false} is VALID [2022-04-08 08:59:31,458 INFO L290 TraceCheckUtils]: 17: Hoare triple {303#false} assume 0 == ~cond; {303#false} is VALID [2022-04-08 08:59:31,458 INFO L290 TraceCheckUtils]: 18: Hoare triple {303#false} assume !false; {303#false} is VALID [2022-04-08 08:59:31,459 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-08 08:59:31,460 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:31,462 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [926110360] [2022-04-08 08:59:31,462 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [926110360] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:31,462 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:31,462 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 08:59:31,462 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:31,462 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [257211100] [2022-04-08 08:59:31,463 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [257211100] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:31,463 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:31,463 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 08:59:31,463 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [871806753] [2022-04-08 08:59:31,463 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:31,464 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-08 08:59:31,464 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:31,464 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-08 08:59:31,483 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-08 08:59:31,484 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 08:59:31,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:31,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 08:59:31,486 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 08:59:31,486 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-08 08:59:31,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,830 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-08 08:59:31,830 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 08:59:31,831 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-08 08:59:31,832 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:31,832 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-08 08:59:31,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-08 08:59:31,838 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-08 08:59:31,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 100 transitions. [2022-04-08 08:59:31,846 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 100 transitions. [2022-04-08 08:59:31,961 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-08 08:59:31,966 INFO L225 Difference]: With dead ends: 80 [2022-04-08 08:59:31,966 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 08:59:31,967 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-08 08:59:31,971 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-08 08:59:31,971 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-08 08:59:31,974 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 08:59:31,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 34. [2022-04-08 08:59:31,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:31,983 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-08 08:59:31,983 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-08 08:59:31,984 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-08 08:59:31,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,990 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-08 08:59:31,990 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-08 08:59:31,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:31,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:31,991 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-08 08:59:31,992 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-08 08:59:31,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:31,994 INFO L93 Difference]: Finished difference Result 48 states and 59 transitions. [2022-04-08 08:59:31,994 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 59 transitions. [2022-04-08 08:59:31,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:31,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:31,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:31,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:31,995 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-08 08:59:31,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-08 08:59:31,997 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 19 [2022-04-08 08:59:31,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:31,997 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-08 08:59:31,997 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-08 08:59:31,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-08 08:59:32,048 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-08 08:59:32,048 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-08 08:59:32,049 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-08 08:59:32,049 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:32,049 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-08 08:59:32,049 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-08 08:59:32,050 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:32,050 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:32,050 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 1 times [2022-04-08 08:59:32,050 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:32,050 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1847780423] [2022-04-08 08:59:32,060 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:32,060 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:32,060 INFO L85 PathProgramCache]: Analyzing trace with hash 470194446, now seen corresponding path program 2 times [2022-04-08 08:59:32,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:32,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1734281294] [2022-04-08 08:59:32,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:32,060 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:32,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:32,348 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:32,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:32,356 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-08 08:59:32,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-08 08:59:32,356 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-08 08:59:32,357 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-08 08:59:32,361 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-08 08:59:32,361 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-08 08:59:32,362 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-08 08:59:32,362 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-08 08:59:32,364 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-08 08:59:32,364 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-08 08:59:32,367 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-08 08:59:32,368 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-08 08:59:32,368 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-08 08:59:32,369 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-08 08:59:32,370 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-08 08:59:32,370 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-08 08:59:32,371 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-08 08:59:32,371 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-08 08:59:32,372 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-08 08:59:32,372 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-08 08:59:32,373 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-08 08:59:32,373 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-08 08:59:32,374 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-08 08:59:32,374 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-08 08:59:32,376 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-08 08:59:32,376 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-08 08:59:32,377 INFO L290 TraceCheckUtils]: 23: Hoare triple {653#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {644#false} is VALID [2022-04-08 08:59:32,377 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-08 08:59:32,378 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-08 08:59:32,378 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:32,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1734281294] [2022-04-08 08:59:32,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1734281294] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:32,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1590965281] [2022-04-08 08:59:32,379 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:32,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:32,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:32,380 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-08 08:59:32,408 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-08 08:59:32,490 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:32,490 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:32,497 INFO L263 TraceCheckSpWp]: Trace formula consists of 275 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 08:59:32,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:32,524 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:32,743 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-08 08:59:32,886 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-08 08:59:32,969 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-08 08:59:32,969 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-08 08:59:32,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-08 08:59:32,970 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-08 08:59:32,970 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-08 08:59:32,970 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-08 08:59:32,970 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-08 08:59:32,972 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-08 08:59:32,973 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-08 08:59:32,974 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-08 08:59:32,974 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-08 08:59:32,975 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-08 08:59:32,975 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-08 08:59:32,976 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-08 08:59:32,976 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-08 08:59:32,977 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-08 08:59:32,977 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-08 08:59:32,978 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-08 08:59:32,978 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-08 08:59:32,979 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-08 08:59:32,979 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-08 08:59:32,980 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-08 08:59:32,980 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:32,981 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-08 08:59:32,981 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-08 08:59:32,982 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-08 08:59:32,982 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:33,205 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-08 08:59:33,218 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-08 08:59:33,264 INFO L290 TraceCheckUtils]: 24: Hoare triple {644#false} assume !false; {644#false} is VALID [2022-04-08 08:59:33,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {644#false} is VALID [2022-04-08 08:59:33,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:33,266 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-08 08:59:33,267 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-08 08:59:33,267 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-08 08:59:33,268 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-08 08:59:33,270 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-08 08:59:33,270 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-08 08:59:33,271 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-08 08:59:33,271 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-08 08:59:33,271 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-08 08:59:33,272 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-08 08:59:33,272 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-08 08:59:33,272 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-08 08:59:33,274 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-08 08:59:33,274 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-08 08:59:33,276 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-08 08:59:33,276 INFO L290 TraceCheckUtils]: 6: Hoare triple {643#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {643#true} is VALID [2022-04-08 08:59:33,277 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-08 08:59:33,277 INFO L272 TraceCheckUtils]: 4: Hoare triple {643#true} call #t~ret22 := main(); {643#true} is VALID [2022-04-08 08:59:33,277 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {643#true} {643#true} #123#return; {643#true} is VALID [2022-04-08 08:59:33,277 INFO L290 TraceCheckUtils]: 2: Hoare triple {643#true} assume true; {643#true} is VALID [2022-04-08 08:59:33,277 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-08 08:59:33,277 INFO L272 TraceCheckUtils]: 0: Hoare triple {643#true} call ULTIMATE.init(); {643#true} is VALID [2022-04-08 08:59:33,278 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-08 08:59:33,278 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1590965281] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:33,278 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:33,278 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 17 [2022-04-08 08:59:33,279 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:33,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1847780423] [2022-04-08 08:59:33,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1847780423] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:33,279 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:33,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 08:59:33,279 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1828197327] [2022-04-08 08:59:33,279 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:33,280 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-08 08:59:33,280 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:33,280 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-08 08:59:33,300 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-08 08:59:33,300 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 08:59:33,301 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:33,301 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 08:59:33,301 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=222, Unknown=0, NotChecked=0, Total=272 [2022-04-08 08:59:33,302 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-08 08:59:34,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,043 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-04-08 08:59:34,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 08:59:34,043 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-08 08:59:34,043 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:34,043 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-08 08:59:34,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 08:59:34,046 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-08 08:59:34,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-08 08:59:34,048 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-08 08:59:34,142 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-08 08:59:34,144 INFO L225 Difference]: With dead ends: 78 [2022-04-08 08:59:34,144 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 08:59:34,145 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-08 08:59:34,146 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-08 08:59:34,146 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-08 08:59:34,147 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 08:59:34,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 55. [2022-04-08 08:59:34,156 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:34,156 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-08 08:59:34,156 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-08 08:59:34,156 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-08 08:59:34,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,159 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-08 08:59:34,159 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-08 08:59:34,160 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:34,160 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:34,160 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-08 08:59:34,160 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-08 08:59:34,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,163 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-04-08 08:59:34,163 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 95 transitions. [2022-04-08 08:59:34,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:34,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:34,164 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:34,164 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:34,164 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-08 08:59:34,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 67 transitions. [2022-04-08 08:59:34,166 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 67 transitions. Word has length 25 [2022-04-08 08:59:34,166 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:34,166 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 67 transitions. [2022-04-08 08:59:34,167 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-08 08:59:34,167 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 67 transitions. [2022-04-08 08:59:34,242 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-08 08:59:34,243 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 67 transitions. [2022-04-08 08:59:34,243 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-08 08:59:34,243 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:34,244 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-08 08:59:34,271 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 08:59:34,463 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-08 08:59:34,464 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:34,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:34,464 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 1 times [2022-04-08 08:59:34,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:34,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [607775916] [2022-04-08 08:59:34,467 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:34,467 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:34,467 INFO L85 PathProgramCache]: Analyzing trace with hash -550873908, now seen corresponding path program 2 times [2022-04-08 08:59:34,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:34,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1615805052] [2022-04-08 08:59:34,468 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:34,468 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:34,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:34,510 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:34,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:34,515 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-08 08:59:34,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-08 08:59:34,515 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-08 08:59:34,516 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-08 08:59:34,516 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-08 08:59:34,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {1244#true} assume true; {1244#true} is VALID [2022-04-08 08:59:34,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1244#true} {1244#true} #123#return; {1244#true} is VALID [2022-04-08 08:59:34,516 INFO L272 TraceCheckUtils]: 4: Hoare triple {1244#true} call #t~ret22 := main(); {1244#true} is VALID [2022-04-08 08:59:34,516 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-08 08:59:34,517 INFO L290 TraceCheckUtils]: 6: Hoare triple {1244#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1244#true} is VALID [2022-04-08 08:59:34,519 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-08 08:59:34,519 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-08 08:59:34,520 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-08 08:59:34,520 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-08 08:59:34,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-08 08:59:34,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-08 08:59:34,520 INFO L290 TraceCheckUtils]: 13: Hoare triple {1245#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {1245#false} is VALID [2022-04-08 08:59:34,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {1245#false} assume !(~j~0 < ~edgecount~0); {1245#false} is VALID [2022-04-08 08:59:34,520 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-08 08:59:34,520 INFO L290 TraceCheckUtils]: 16: Hoare triple {1245#false} assume !(~i~0 < ~nodecount~0); {1245#false} is VALID [2022-04-08 08:59:34,521 INFO L290 TraceCheckUtils]: 17: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-08 08:59:34,521 INFO L290 TraceCheckUtils]: 18: Hoare triple {1245#false} assume !(~i~0 < ~edgecount~0); {1245#false} is VALID [2022-04-08 08:59:34,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {1245#false} ~i~0 := 0; {1245#false} is VALID [2022-04-08 08:59:34,521 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-08 08:59:34,521 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-08 08:59:34,521 INFO L290 TraceCheckUtils]: 22: Hoare triple {1245#false} ~cond := #in~cond; {1245#false} is VALID [2022-04-08 08:59:34,521 INFO L290 TraceCheckUtils]: 23: Hoare triple {1245#false} assume 0 == ~cond; {1245#false} is VALID [2022-04-08 08:59:34,522 INFO L290 TraceCheckUtils]: 24: Hoare triple {1245#false} assume !false; {1245#false} is VALID [2022-04-08 08:59:34,522 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-08 08:59:34,522 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:34,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1615805052] [2022-04-08 08:59:34,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1615805052] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:34,522 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:34,522 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 08:59:34,523 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:34,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [607775916] [2022-04-08 08:59:34,523 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [607775916] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:34,523 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:34,523 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 08:59:34,523 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [260676375] [2022-04-08 08:59:34,523 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:34,523 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-08 08:59:34,524 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:34,524 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-08 08:59:34,543 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-08 08:59:34,543 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 08:59:34,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:34,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 08:59:34,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 08:59:34,544 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-08 08:59:34,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,663 INFO L93 Difference]: Finished difference Result 82 states and 101 transitions. [2022-04-08 08:59:34,663 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 08:59:34,663 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-08 08:59:34,663 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:34,663 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-08 08:59:34,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-08 08:59:34,665 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-08 08:59:34,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2022-04-08 08:59:34,667 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 72 transitions. [2022-04-08 08:59:34,725 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-08 08:59:34,726 INFO L225 Difference]: With dead ends: 82 [2022-04-08 08:59:34,726 INFO L226 Difference]: Without dead ends: 57 [2022-04-08 08:59:34,726 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-08 08:59:34,727 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-08 08:59:34,727 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-08 08:59:34,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-08 08:59:34,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 56. [2022-04-08 08:59:34,736 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:34,737 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-08 08:59:34,737 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-08 08:59:34,737 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-08 08:59:34,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,739 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-08 08:59:34,739 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-08 08:59:34,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:34,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:34,740 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-08 08:59:34,740 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-08 08:59:34,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:34,742 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-04-08 08:59:34,742 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-08 08:59:34,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:34,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:34,743 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:34,743 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:34,743 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-08 08:59:34,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 68 transitions. [2022-04-08 08:59:34,745 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 68 transitions. Word has length 25 [2022-04-08 08:59:34,745 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:34,745 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 68 transitions. [2022-04-08 08:59:34,745 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-08 08:59:34,745 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 68 transitions. [2022-04-08 08:59:34,818 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-08 08:59:34,818 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 68 transitions. [2022-04-08 08:59:34,819 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 08:59:34,819 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:34,819 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-08 08:59:34,819 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-08 08:59:34,819 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:34,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:34,820 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 1 times [2022-04-08 08:59:34,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:34,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1950147512] [2022-04-08 08:59:34,823 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:34,823 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:34,823 INFO L85 PathProgramCache]: Analyzing trace with hash -1439064257, now seen corresponding path program 2 times [2022-04-08 08:59:34,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:34,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1523345122] [2022-04-08 08:59:34,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:34,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:34,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:34,925 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:34,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:34,931 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-08 08:59:34,931 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-08 08:59:34,932 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-08 08:59:34,932 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-08 08:59:34,932 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-08 08:59:34,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-08 08:59:34,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-08 08:59:34,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-08 08:59:34,933 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-08 08:59:34,933 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-08 08:59:34,933 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-08 08:59:34,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:34,933 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-08 08:59:34,933 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-08 08:59:34,933 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:34,934 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-08 08:59:34,934 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-08 08:59:34,935 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-08 08:59:34,935 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-08 08:59:34,936 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-08 08:59:34,937 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-08 08:59:34,937 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-08 08:59:34,937 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-08 08:59:34,938 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-08 08:59:34,938 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-08 08:59:34,938 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-08 08:59:34,938 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-08 08:59:34,939 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-08 08:59:34,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-08 08:59:34,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-08 08:59:34,939 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-08 08:59:34,939 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-08 08:59:34,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:34,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1523345122] [2022-04-08 08:59:34,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1523345122] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:34,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [988650603] [2022-04-08 08:59:34,940 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:34,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:34,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:34,941 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-08 08:59:34,966 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-08 08:59:35,060 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:35,060 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:35,063 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 08:59:35,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:35,073 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:35,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-08 08:59:35,192 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-08 08:59:35,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-08 08:59:35,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-08 08:59:35,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-08 08:59:35,193 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-08 08:59:35,193 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-08 08:59:35,193 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-08 08:59:35,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:35,193 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-08 08:59:35,194 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-08 08:59:35,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:35,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-08 08:59:35,194 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-08 08:59:35,195 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-08 08:59:35,195 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-08 08:59:35,196 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-08 08:59:35,196 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-08 08:59:35,196 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-08 08:59:35,197 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-08 08:59:35,197 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-08 08:59:35,198 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-08 08:59:35,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-08 08:59:35,198 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-08 08:59:35,198 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-08 08:59:35,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-08 08:59:35,198 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-08 08:59:35,198 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-08 08:59:35,199 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-08 08:59:35,199 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:35,295 INFO L290 TraceCheckUtils]: 27: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-08 08:59:35,295 INFO L290 TraceCheckUtils]: 26: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-08 08:59:35,295 INFO L290 TraceCheckUtils]: 25: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-08 08:59:35,295 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-08 08:59:35,295 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-08 08:59:35,295 INFO L290 TraceCheckUtils]: 22: Hoare triple {1646#false} ~i~0 := 0; {1646#false} is VALID [2022-04-08 08:59:35,296 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#(< main_~i~0 main_~edgecount~0)} assume !(~i~0 < ~edgecount~0); {1646#false} is VALID [2022-04-08 08:59:35,296 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-08 08:59:35,297 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-08 08:59:35,297 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-08 08:59:35,297 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-08 08:59:35,298 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-08 08:59:35,298 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-08 08:59:35,298 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-08 08:59:35,299 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-08 08:59:35,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} ~i~0 := 0; {1645#true} is VALID [2022-04-08 08:59:35,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} assume !(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:35,299 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-08 08:59:35,299 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-08 08:59:35,299 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume !!(~i~0 < ~nodecount~0); {1645#true} is VALID [2022-04-08 08:59:35,299 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-08 08:59:35,300 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {1645#true} is VALID [2022-04-08 08:59:35,300 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-08 08:59:35,300 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret22 := main(); {1645#true} is VALID [2022-04-08 08:59:35,300 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #123#return; {1645#true} is VALID [2022-04-08 08:59:35,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-08 08:59:35,300 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-08 08:59:35,300 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-08 08:59:35,301 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-08 08:59:35,301 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [988650603] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:35,301 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:35,301 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 5, 5] total 10 [2022-04-08 08:59:35,301 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:35,301 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1950147512] [2022-04-08 08:59:35,301 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1950147512] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:35,302 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:35,302 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 08:59:35,302 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [766653469] [2022-04-08 08:59:35,302 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:35,302 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-08 08:59:35,302 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:35,303 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-08 08:59:35,348 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-08 08:59:35,348 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 08:59:35,348 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:35,349 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 08:59:35,349 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-08 08:59:35,349 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-08 08:59:35,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:35,713 INFO L93 Difference]: Finished difference Result 130 states and 165 transitions. [2022-04-08 08:59:35,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 08:59:35,714 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-08 08:59:35,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:35,714 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-08 08:59:35,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-08 08:59:35,716 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-08 08:59:35,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 93 transitions. [2022-04-08 08:59:35,719 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 93 transitions. [2022-04-08 08:59:35,793 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-08 08:59:35,795 INFO L225 Difference]: With dead ends: 130 [2022-04-08 08:59:35,795 INFO L226 Difference]: Without dead ends: 94 [2022-04-08 08:59:35,795 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-08 08:59:35,796 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-08 08:59:35,796 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-08 08:59:35,797 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-08 08:59:35,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 68. [2022-04-08 08:59:35,830 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:35,831 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-08 08:59:35,831 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-08 08:59:35,831 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-08 08:59:35,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:35,834 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-08 08:59:35,834 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-08 08:59:35,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:35,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:35,835 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-08 08:59:35,835 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-08 08:59:35,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:35,838 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-04-08 08:59:35,839 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2022-04-08 08:59:35,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:35,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:35,839 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:35,839 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:35,839 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-08 08:59:35,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 84 transitions. [2022-04-08 08:59:35,841 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 84 transitions. Word has length 28 [2022-04-08 08:59:35,841 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:35,842 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 84 transitions. [2022-04-08 08:59:35,842 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-08 08:59:35,842 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 84 transitions. [2022-04-08 08:59:35,949 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-08 08:59:35,950 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 84 transitions. [2022-04-08 08:59:35,950 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 08:59:35,950 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:35,950 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-08 08:59:35,974 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-08 08:59:36,164 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-08 08:59:36,165 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:36,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:36,165 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 1 times [2022-04-08 08:59:36,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:36,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [893905623] [2022-04-08 08:59:36,171 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:36,171 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:36,171 INFO L85 PathProgramCache]: Analyzing trace with hash 244787668, now seen corresponding path program 2 times [2022-04-08 08:59:36,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:36,171 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1333407132] [2022-04-08 08:59:36,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:36,171 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:36,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:36,277 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:36,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:36,282 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-08 08:59:36,282 INFO L290 TraceCheckUtils]: 1: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-08 08:59:36,282 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-08 08:59:36,289 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-08 08:59:36,289 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-08 08:59:36,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-08 08:59:36,289 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-08 08:59:36,289 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-08 08:59:36,289 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-08 08:59:36,289 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-08 08:59:36,291 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-08 08:59:36,292 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-08 08:59:36,292 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-08 08:59:36,295 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-08 08:59:36,295 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-08 08:59:36,296 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-08 08:59:36,296 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-08 08:59:36,297 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-08 08:59:36,300 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-08 08:59:36,300 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-08 08:59:36,300 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-08 08:59:36,301 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-08 08:59:36,301 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-08 08:59:36,302 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,315 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-08 08:59:36,315 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,316 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-08 08:59:36,316 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-08 08:59:36,316 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-08 08:59:36,316 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-08 08:59:36,316 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-08 08:59:36,316 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-08 08:59:36,316 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:36,316 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1333407132] [2022-04-08 08:59:36,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1333407132] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:36,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [729581906] [2022-04-08 08:59:36,317 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:36,317 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:36,317 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:36,318 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-08 08:59:36,319 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-08 08:59:36,435 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:36,435 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:36,437 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-08 08:59:36,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:36,447 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:36,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-08 08:59:36,597 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-08 08:59:36,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-08 08:59:36,597 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-08 08:59:36,597 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-08 08:59:36,598 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-08 08:59:36,598 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-08 08:59:36,599 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-08 08:59:36,600 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-08 08:59:36,600 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-08 08:59:36,600 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-08 08:59:36,601 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-08 08:59:36,601 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-08 08:59:36,601 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-08 08:59:36,602 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-08 08:59:36,602 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-08 08:59:36,602 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-08 08:59:36,603 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-08 08:59:36,603 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-08 08:59:36,604 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-08 08:59:36,604 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,604 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-08 08:59:36,604 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,604 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-08 08:59:36,604 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-08 08:59:36,605 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-08 08:59:36,605 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-08 08:59:36,605 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-08 08:59:36,605 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-08 08:59:36,605 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:36,753 INFO L290 TraceCheckUtils]: 27: Hoare triple {2418#false} assume !false; {2418#false} is VALID [2022-04-08 08:59:36,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {2418#false} assume 0 == ~cond; {2418#false} is VALID [2022-04-08 08:59:36,754 INFO L290 TraceCheckUtils]: 25: Hoare triple {2418#false} ~cond := #in~cond; {2418#false} is VALID [2022-04-08 08:59:36,754 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-08 08:59:36,754 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-08 08:59:36,754 INFO L290 TraceCheckUtils]: 22: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,754 INFO L290 TraceCheckUtils]: 21: Hoare triple {2418#false} assume !(~i~0 < ~edgecount~0); {2418#false} is VALID [2022-04-08 08:59:36,754 INFO L290 TraceCheckUtils]: 20: Hoare triple {2418#false} ~i~0 := 0; {2418#false} is VALID [2022-04-08 08:59:36,756 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-08 08:59:36,756 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-08 08:59:36,757 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-08 08:59:36,758 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-08 08:59:36,758 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-08 08:59:36,759 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-08 08:59:36,759 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-08 08:59:36,759 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-08 08:59:36,760 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-08 08:59:36,760 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-08 08:59:36,761 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-08 08:59:36,761 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-08 08:59:36,767 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-08 08:59:36,767 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {2417#true} is VALID [2022-04-08 08:59:36,768 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-08 08:59:36,768 INFO L272 TraceCheckUtils]: 4: Hoare triple {2417#true} call #t~ret22 := main(); {2417#true} is VALID [2022-04-08 08:59:36,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2417#true} {2417#true} #123#return; {2417#true} is VALID [2022-04-08 08:59:36,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {2417#true} assume true; {2417#true} is VALID [2022-04-08 08:59:36,768 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-08 08:59:36,768 INFO L272 TraceCheckUtils]: 0: Hoare triple {2417#true} call ULTIMATE.init(); {2417#true} is VALID [2022-04-08 08:59:36,769 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-08 08:59:36,769 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [729581906] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:36,769 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:36,769 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-08 08:59:36,769 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:36,769 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [893905623] [2022-04-08 08:59:36,769 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [893905623] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:36,769 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:36,769 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 08:59:36,769 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [465660841] [2022-04-08 08:59:36,770 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:36,770 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-08 08:59:36,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:36,771 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-08 08:59:36,790 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-08 08:59:36,790 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 08:59:36,790 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:36,791 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 08:59:36,791 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-08 08:59:36,791 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-08 08:59:37,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:37,561 INFO L93 Difference]: Finished difference Result 178 states and 225 transitions. [2022-04-08 08:59:37,561 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 08:59:37,561 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-08 08:59:37,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:37,561 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-08 08:59:37,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-08 08:59:37,564 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-08 08:59:37,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 111 transitions. [2022-04-08 08:59:37,566 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 111 transitions. [2022-04-08 08:59:37,668 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-08 08:59:37,671 INFO L225 Difference]: With dead ends: 178 [2022-04-08 08:59:37,671 INFO L226 Difference]: Without dead ends: 148 [2022-04-08 08:59:37,672 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-08 08:59:37,672 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-08 08:59:37,673 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-08 08:59:37,673 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-04-08 08:59:37,768 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 87. [2022-04-08 08:59:37,768 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:37,769 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-08 08:59:37,769 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-08 08:59:37,770 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-08 08:59:37,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:37,774 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-08 08:59:37,774 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-08 08:59:37,775 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:37,775 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:37,775 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-08 08:59:37,776 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-08 08:59:37,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:37,782 INFO L93 Difference]: Finished difference Result 148 states and 189 transitions. [2022-04-08 08:59:37,782 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 189 transitions. [2022-04-08 08:59:37,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:37,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:37,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:37,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:37,783 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-08 08:59:37,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 110 transitions. [2022-04-08 08:59:37,787 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 110 transitions. Word has length 28 [2022-04-08 08:59:37,787 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:37,787 INFO L478 AbstractCegarLoop]: Abstraction has 87 states and 110 transitions. [2022-04-08 08:59:37,787 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-08 08:59:37,787 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 110 transitions. [2022-04-08 08:59:37,931 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-08 08:59:37,931 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 110 transitions. [2022-04-08 08:59:37,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-08 08:59:37,932 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:37,932 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-08 08:59:37,951 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-08 08:59:38,145 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-08 08:59:38,145 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:38,146 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:38,146 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 1 times [2022-04-08 08:59:38,146 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:38,146 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1880796703] [2022-04-08 08:59:38,149 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:38,149 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:38,150 INFO L85 PathProgramCache]: Analyzing trace with hash 777875589, now seen corresponding path program 2 times [2022-04-08 08:59:38,150 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:38,150 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [554760863] [2022-04-08 08:59:38,150 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:38,150 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:38,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:38,541 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:38,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:38,546 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-08 08:59:38,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-08 08:59:38,546 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-08 08:59:38,546 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-08 08:59:38,547 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-08 08:59:38,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-08 08:59:38,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-08 08:59:38,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-08 08:59:38,547 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-08 08:59:38,547 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-08 08:59:38,554 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-08 08:59:38,557 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-08 08:59:38,557 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-08 08:59:38,558 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-08 08:59:38,559 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-08 08:59:38,559 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-08 08:59:38,560 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-08 08:59:38,560 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-08 08:59:38,561 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-08 08:59:38,562 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-08 08:59:38,562 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-08 08:59:38,563 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-08 08:59:38,563 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-08 08:59:38,563 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-08 08:59:38,564 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-08 08:59:38,565 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-08 08:59:38,565 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-08 08:59:38,566 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-08 08:59:38,566 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-08 08:59:38,567 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-08 08:59:38,567 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-08 08:59:38,568 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-08 08:59:38,568 INFO L290 TraceCheckUtils]: 29: Hoare triple {3452#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3438#false} is VALID [2022-04-08 08:59:38,568 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-08 08:59:38,568 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-08 08:59:38,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:38,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [554760863] [2022-04-08 08:59:38,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [554760863] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:38,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [658464917] [2022-04-08 08:59:38,569 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:38,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:38,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:38,570 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-08 08:59:38,601 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-08 08:59:38,670 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:38,670 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:38,672 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 08:59:38,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:38,690 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:38,758 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-08 08:59:38,924 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-08 08:59:39,256 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-08 08:59:39,258 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-08 08:59:40,039 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-08 08:59:40,137 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-08 08:59:40,137 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-08 08:59:40,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-08 08:59:40,137 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-08 08:59:40,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-08 08:59:40,137 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-08 08:59:40,137 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-08 08:59:40,140 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-08 08:59:40,140 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-08 08:59:40,141 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-08 08:59:40,142 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-08 08:59:40,143 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-08 08:59:40,143 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-08 08:59:40,144 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-08 08:59:40,148 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-08 08:59:40,149 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-08 08:59:40,150 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-08 08:59:40,150 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-08 08:59:40,151 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-08 08:59:40,152 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-08 08:59:40,152 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-08 08:59:40,153 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-08 08:59:40,154 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-08 08:59:40,155 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-08 08:59:40,155 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-08 08:59:40,156 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-08 08:59:40,157 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-08 08:59:40,157 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-08 08:59:40,157 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:40,159 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-08 08:59:40,159 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-08 08:59:40,159 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-08 08:59:40,159 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:42,459 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-08 08:59:42,946 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-08 08:59:44,300 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_main_~x~0_9 Int) (v_ArrVal_192 Int) (v_ArrVal_191 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_191))) (or (<= 0 (select (store .cse0 (+ (* v_main_~x~0_9 4) |c_main_~#distance~0.offset|) v_ArrVal_192) |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_~#Dest~0.offset|) v_main_~x~0_9)) (not (<= 0 v_ArrVal_191))))) is different from false [2022-04-08 08:59:44,884 INFO L290 TraceCheckUtils]: 30: Hoare triple {3438#false} assume !false; {3438#false} is VALID [2022-04-08 08:59:44,884 INFO L290 TraceCheckUtils]: 29: Hoare triple {3549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3438#false} is VALID [2022-04-08 08:59:44,884 INFO L290 TraceCheckUtils]: 28: Hoare triple {3545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:44,885 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-08 08:59:44,885 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-08 08:59:44,886 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-08 08:59:44,886 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-08 08:59:44,886 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-08 08:59:44,887 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-08 08:59:44,887 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-08 08:59:44,887 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-08 08:59:44,888 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-08 08:59:44,888 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-08 08:59:44,888 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-08 08:59:44,889 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-08 08:59:44,890 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-08 08:59:44,891 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-08 08:59:44,892 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-08 08:59:44,892 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-08 08:59:44,893 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-08 08:59:44,893 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-08 08:59:44,895 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-08 08:59:44,895 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-08 08:59:44,899 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-08 08:59:44,899 INFO L290 TraceCheckUtils]: 6: Hoare triple {3437#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {3437#true} is VALID [2022-04-08 08:59:44,899 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-08 08:59:44,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {3437#true} call #t~ret22 := main(); {3437#true} is VALID [2022-04-08 08:59:44,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3437#true} {3437#true} #123#return; {3437#true} is VALID [2022-04-08 08:59:44,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {3437#true} assume true; {3437#true} is VALID [2022-04-08 08:59:44,900 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-08 08:59:44,900 INFO L272 TraceCheckUtils]: 0: Hoare triple {3437#true} call ULTIMATE.init(); {3437#true} is VALID [2022-04-08 08:59:44,900 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-08 08:59:44,900 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [658464917] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:44,900 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:44,900 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 11, 11] total 29 [2022-04-08 08:59:44,901 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:44,901 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1880796703] [2022-04-08 08:59:44,901 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1880796703] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:44,901 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:44,901 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 08:59:44,901 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1851688216] [2022-04-08 08:59:44,902 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:44,902 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-08 08:59:44,902 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:44,902 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-08 08:59:44,930 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-08 08:59:44,930 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 08:59:44,930 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:44,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 08:59:44,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=556, Unknown=3, NotChecked=150, Total=812 [2022-04-08 08:59:44,931 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-08 08:59:46,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:46,796 INFO L93 Difference]: Finished difference Result 177 states and 227 transitions. [2022-04-08 08:59:46,796 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 08:59:46,796 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-08 08:59:46,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:46,797 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-08 08:59:46,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-08 08:59:46,800 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-08 08:59:46,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 140 transitions. [2022-04-08 08:59:46,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 140 transitions. [2022-04-08 08:59:46,943 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-08 08:59:46,946 INFO L225 Difference]: With dead ends: 177 [2022-04-08 08:59:46,946 INFO L226 Difference]: Without dead ends: 175 [2022-04-08 08:59:46,948 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 311 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=297, Invalid=1194, Unknown=3, NotChecked=228, Total=1722 [2022-04-08 08:59:46,948 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 187 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 411 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 59 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 411 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 08:59:46,949 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.6s Time] [2022-04-08 08:59:46,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-08 08:59:47,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 89. [2022-04-08 08:59:47,072 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:47,073 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-08 08:59:47,073 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-08 08:59:47,073 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-08 08:59:47,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:47,082 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-08 08:59:47,082 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-08 08:59:47,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:47,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:47,083 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-08 08:59:47,084 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-08 08:59:47,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:47,091 INFO L93 Difference]: Finished difference Result 175 states and 225 transitions. [2022-04-08 08:59:47,091 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 225 transitions. [2022-04-08 08:59:47,091 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:47,091 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:47,091 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:47,091 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:47,092 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-08 08:59:47,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 114 transitions. [2022-04-08 08:59:47,094 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 114 transitions. Word has length 31 [2022-04-08 08:59:47,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:47,094 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 114 transitions. [2022-04-08 08:59:47,094 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-08 08:59:47,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 114 transitions. [2022-04-08 08:59:47,246 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-08 08:59:47,246 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 114 transitions. [2022-04-08 08:59:47,247 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-08 08:59:47,247 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:47,247 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-08 08:59:47,263 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 08:59:47,451 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-08 08:59:47,451 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:47,452 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:47,452 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 3 times [2022-04-08 08:59:47,452 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:47,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [569976824] [2022-04-08 08:59:47,455 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:47,455 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:47,455 INFO L85 PathProgramCache]: Analyzing trace with hash 1819082994, now seen corresponding path program 4 times [2022-04-08 08:59:47,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:47,455 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1034861551] [2022-04-08 08:59:47,456 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:47,456 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:47,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:47,604 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:47,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:47,609 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-08 08:59:47,609 INFO L290 TraceCheckUtils]: 1: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-08 08:59:47,609 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-08 08:59:47,610 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-08 08:59:47,610 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-08 08:59:47,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-08 08:59:47,610 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-08 08:59:47,610 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-08 08:59:47,610 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-08 08:59:47,610 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-08 08:59:47,612 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-08 08:59:47,613 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-08 08:59:47,614 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-08 08:59:47,614 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-08 08:59:47,615 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-08 08:59:47,616 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-08 08:59:47,616 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-08 08:59:47,617 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-08 08:59:47,617 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-08 08:59:47,617 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-08 08:59:47,618 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-08 08:59:47,618 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-08 08:59:47,619 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-08 08:59:47,619 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-08 08:59:47,619 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-08 08:59:47,620 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-08 08:59:47,620 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-08 08:59:47,621 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-08 08:59:47,621 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-08 08:59:47,622 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-08 08:59:47,622 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-08 08:59:47,622 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-08 08:59:47,623 INFO L290 TraceCheckUtils]: 29: Hoare triple {4574#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4563#false} is VALID [2022-04-08 08:59:47,623 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-08 08:59:47,623 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-08 08:59:47,623 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:47,623 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1034861551] [2022-04-08 08:59:47,623 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1034861551] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:47,624 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1331775515] [2022-04-08 08:59:47,624 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 08:59:47,624 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:47,624 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:47,627 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-08 08:59:47,638 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-08 08:59:47,683 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 08:59:47,683 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:47,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 08:59:47,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:47,695 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:47,745 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-08 08:59:47,817 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-08 08:59:47,817 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-08 08:59:49,152 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-08 08:59:49,152 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-08 08:59:49,269 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-08 08:59:49,269 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-08 08:59:49,269 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-08 08:59:49,269 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-08 08:59:49,269 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-08 08:59:49,269 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-08 08:59:49,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-08 08:59:49,270 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-08 08:59:49,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-08 08:59:49,270 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-08 08:59:49,272 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-08 08:59:49,272 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-08 08:59:49,273 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-08 08:59:49,274 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-08 08:59:49,275 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-08 08:59:49,275 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-08 08:59:49,276 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-08 08:59:49,277 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-08 08:59:49,277 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-08 08:59:49,278 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-08 08:59:49,279 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-08 08:59:49,279 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-08 08:59:49,282 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-08 08:59:49,282 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-08 08:59:49,283 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-08 08:59:49,284 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-08 08:59:49,284 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-08 08:59:49,285 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-08 08:59:49,285 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:49,285 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-08 08:59:49,285 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-08 08:59:49,286 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-08 08:59:49,286 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:49,966 INFO L290 TraceCheckUtils]: 30: Hoare triple {4563#false} assume !false; {4563#false} is VALID [2022-04-08 08:59:49,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {4676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4563#false} is VALID [2022-04-08 08:59:49,967 INFO L290 TraceCheckUtils]: 28: Hoare triple {4672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 08:59:49,968 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-08 08:59:49,968 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-08 08:59:49,968 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-08 08:59:49,969 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-08 08:59:49,969 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-08 08:59:49,969 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-08 08:59:49,970 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-08 08:59:49,970 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-08 08:59:49,970 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-08 08:59:49,971 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-08 08:59:49,971 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-08 08:59:49,972 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-08 08:59:49,972 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-08 08:59:49,974 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-08 08:59:49,974 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-08 08:59:49,975 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-08 08:59:49,975 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-08 08:59:49,976 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-08 08:59:49,976 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-08 08:59:49,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {4562#true} assume !!(~i~0 < ~nodecount~0); {4562#true} is VALID [2022-04-08 08:59:49,977 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-08 08:59:49,977 INFO L290 TraceCheckUtils]: 6: Hoare triple {4562#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {4562#true} is VALID [2022-04-08 08:59:49,977 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-08 08:59:49,977 INFO L272 TraceCheckUtils]: 4: Hoare triple {4562#true} call #t~ret22 := main(); {4562#true} is VALID [2022-04-08 08:59:49,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4562#true} {4562#true} #123#return; {4562#true} is VALID [2022-04-08 08:59:49,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {4562#true} assume true; {4562#true} is VALID [2022-04-08 08:59:49,977 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-08 08:59:49,977 INFO L272 TraceCheckUtils]: 0: Hoare triple {4562#true} call ULTIMATE.init(); {4562#true} is VALID [2022-04-08 08:59:49,977 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-08 08:59:49,977 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1331775515] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:49,978 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:49,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 16, 16] total 35 [2022-04-08 08:59:49,978 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:49,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [569976824] [2022-04-08 08:59:49,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [569976824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:49,978 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:49,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 08:59:49,978 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [557338884] [2022-04-08 08:59:49,978 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:49,979 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-08 08:59:49,979 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:49,979 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-08 08:59:49,999 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-08 08:59:49,999 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 08:59:49,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:50,000 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 08:59:50,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=995, Unknown=0, NotChecked=0, Total=1190 [2022-04-08 08:59:50,000 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-08 08:59:51,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:51,345 INFO L93 Difference]: Finished difference Result 218 states and 287 transitions. [2022-04-08 08:59:51,345 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 08:59:51,345 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-08 08:59:51,346 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:51,346 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-08 08:59:51,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-08 08:59:51,348 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-08 08:59:51,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-08 08:59:51,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 120 transitions. [2022-04-08 08:59:51,466 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-08 08:59:51,470 INFO L225 Difference]: With dead ends: 218 [2022-04-08 08:59:51,470 INFO L226 Difference]: Without dead ends: 216 [2022-04-08 08:59:51,471 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-08 08:59:51,471 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-08 08:59:51,472 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-08 08:59:51,472 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-04-08 08:59:51,633 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 112. [2022-04-08 08:59:51,633 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:51,634 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-08 08:59:51,634 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-08 08:59:51,634 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-08 08:59:51,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:51,641 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-08 08:59:51,641 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-08 08:59:51,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:51,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:51,641 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-08 08:59:51,642 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-08 08:59:51,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:51,648 INFO L93 Difference]: Finished difference Result 216 states and 285 transitions. [2022-04-08 08:59:51,648 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 285 transitions. [2022-04-08 08:59:51,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:51,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:51,648 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:51,648 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:51,649 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-08 08:59:51,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 148 transitions. [2022-04-08 08:59:51,651 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 148 transitions. Word has length 31 [2022-04-08 08:59:51,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:51,652 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 148 transitions. [2022-04-08 08:59:51,652 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-08 08:59:51,652 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 148 transitions. [2022-04-08 08:59:51,875 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-08 08:59:51,875 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 148 transitions. [2022-04-08 08:59:51,876 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 08:59:51,888 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:51,888 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-08 08:59:51,904 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-08 08:59:52,089 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-08 08:59:52,089 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:52,090 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:52,090 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 1 times [2022-04-08 08:59:52,090 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:52,090 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1125915551] [2022-04-08 08:59:52,094 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:52,094 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:52,094 INFO L85 PathProgramCache]: Analyzing trace with hash -12240024, now seen corresponding path program 2 times [2022-04-08 08:59:52,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:52,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1962973457] [2022-04-08 08:59:52,094 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:52,094 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:52,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:52,171 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:52,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:52,180 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-08 08:59:52,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,180 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-08 08:59:52,181 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-08 08:59:52,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:52,191 INFO L290 TraceCheckUtils]: 0: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-08 08:59:52,191 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-08 08:59:52,191 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,192 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-08 08:59:52,193 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-08 08:59:52,193 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-08 08:59:52,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-08 08:59:52,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-08 08:59:52,193 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-08 08:59:52,193 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-08 08:59:52,193 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-08 08:59:52,194 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-08 08:59:52,194 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-08 08:59:52,195 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-08 08:59:52,196 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-08 08:59:52,196 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,197 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-08 08:59:52,197 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-08 08:59:52,197 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-08 08:59:52,198 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-08 08:59:52,198 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,198 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-08 08:59:52,199 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-08 08:59:52,199 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-08 08:59:52,199 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-08 08:59:52,199 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-08 08:59:52,199 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-08 08:59:52,199 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,200 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-08 08:59:52,200 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-08 08:59:52,201 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-08 08:59:52,201 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-08 08:59:52,201 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-08 08:59:52,201 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-08 08:59:52,202 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-08 08:59:52,202 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-08 08:59:52,202 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-08 08:59:52,202 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:52,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1962973457] [2022-04-08 08:59:52,202 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1962973457] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:52,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1516230499] [2022-04-08 08:59:52,202 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:52,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:52,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:52,208 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-08 08:59:52,209 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-08 08:59:52,285 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:52,285 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:52,286 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-08 08:59:52,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:52,297 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:52,459 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-08 08:59:52,459 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-08 08:59:52,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-08 08:59:52,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-08 08:59:52,460 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-08 08:59:52,460 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-08 08:59:52,461 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-08 08:59:52,462 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-08 08:59:52,462 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-08 08:59:52,462 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-08 08:59:52,463 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-08 08:59:52,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,463 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-08 08:59:52,463 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-08 08:59:52,464 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-08 08:59:52,464 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-08 08:59:52,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,465 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-08 08:59:52,465 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-08 08:59:52,465 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-08 08:59:52,465 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-08 08:59:52,465 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-08 08:59:52,466 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-08 08:59:52,466 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,469 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-08 08:59:52,469 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-08 08:59:52,470 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-08 08:59:52,470 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-08 08:59:52,470 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-08 08:59:52,470 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-08 08:59:52,470 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-08 08:59:52,470 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-08 08:59:52,471 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-08 08:59:52,471 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:52,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {5898#false} assume !false; {5898#false} is VALID [2022-04-08 08:59:52,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {5898#false} assume 0 == ~cond; {5898#false} is VALID [2022-04-08 08:59:52,599 INFO L290 TraceCheckUtils]: 30: Hoare triple {5898#false} ~cond := #in~cond; {5898#false} is VALID [2022-04-08 08:59:52,599 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-08 08:59:52,600 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-08 08:59:52,600 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-08 08:59:52,600 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-08 08:59:52,601 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-08 08:59:52,601 INFO L290 TraceCheckUtils]: 24: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,601 INFO L290 TraceCheckUtils]: 23: Hoare triple {5897#true} assume !(0 == ~cond); {5897#true} is VALID [2022-04-08 08:59:52,601 INFO L290 TraceCheckUtils]: 22: Hoare triple {5897#true} ~cond := #in~cond; {5897#true} is VALID [2022-04-08 08:59:52,601 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-08 08:59:52,601 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-08 08:59:52,602 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-08 08:59:52,602 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-08 08:59:52,602 INFO L290 TraceCheckUtils]: 17: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,603 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-08 08:59:52,603 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-08 08:59:52,603 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-08 08:59:52,603 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-08 08:59:52,604 INFO L290 TraceCheckUtils]: 12: Hoare triple {5904#(<= main_~nodecount~0 1)} ~i~0 := 0; {5904#(<= main_~nodecount~0 1)} is VALID [2022-04-08 08:59:52,604 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-08 08:59:52,604 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-08 08:59:52,605 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-08 08:59:52,605 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-08 08:59:52,607 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-08 08:59:52,607 INFO L290 TraceCheckUtils]: 6: Hoare triple {5897#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {5897#true} is VALID [2022-04-08 08:59:52,607 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-08 08:59:52,607 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} call #t~ret22 := main(); {5897#true} is VALID [2022-04-08 08:59:52,607 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} #123#return; {5897#true} is VALID [2022-04-08 08:59:52,607 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} assume true; {5897#true} is VALID [2022-04-08 08:59:52,607 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-08 08:59:52,607 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} call ULTIMATE.init(); {5897#true} is VALID [2022-04-08 08:59:52,607 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-08 08:59:52,608 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1516230499] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:52,608 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:52,608 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-08 08:59:52,608 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:52,608 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1125915551] [2022-04-08 08:59:52,608 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1125915551] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:52,608 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:52,608 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 08:59:52,608 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1097987411] [2022-04-08 08:59:52,608 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:52,609 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-08 08:59:52,609 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:52,609 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-08 08:59:52,632 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-08 08:59:52,632 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 08:59:52,632 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:52,632 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 08:59:52,632 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-08 08:59:52,632 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-08 08:59:53,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:53,467 INFO L93 Difference]: Finished difference Result 254 states and 333 transitions. [2022-04-08 08:59:53,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 08:59:53,467 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-08 08:59:53,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:53,467 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-08 08:59:53,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-08 08:59:53,469 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-08 08:59:53,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 136 transitions. [2022-04-08 08:59:53,471 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 136 transitions. [2022-04-08 08:59:53,593 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-08 08:59:53,598 INFO L225 Difference]: With dead ends: 254 [2022-04-08 08:59:53,598 INFO L226 Difference]: Without dead ends: 185 [2022-04-08 08:59:53,598 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-08 08:59:53,599 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-08 08:59:53,599 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-08 08:59:53,600 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-08 08:59:53,877 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 131. [2022-04-08 08:59:53,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:53,878 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-08 08:59:53,878 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-08 08:59:53,879 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-08 08:59:53,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:53,884 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-08 08:59:53,884 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-08 08:59:53,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:53,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:53,885 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-08 08:59:53,885 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-08 08:59:53,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:53,890 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-08 08:59:53,890 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-08 08:59:53,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:53,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:53,890 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:53,890 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:53,891 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-08 08:59:53,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 172 transitions. [2022-04-08 08:59:53,894 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 172 transitions. Word has length 33 [2022-04-08 08:59:53,894 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:53,894 INFO L478 AbstractCegarLoop]: Abstraction has 131 states and 172 transitions. [2022-04-08 08:59:53,894 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-08 08:59:53,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 172 transitions. [2022-04-08 08:59:54,141 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-08 08:59:54,141 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 172 transitions. [2022-04-08 08:59:54,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 08:59:54,141 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:54,142 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-08 08:59:54,159 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-08 08:59:54,343 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-08 08:59:54,343 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:54,344 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:54,344 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 3 times [2022-04-08 08:59:54,344 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:54,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [649283120] [2022-04-08 08:59:54,347 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:54,347 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:54,347 INFO L85 PathProgramCache]: Analyzing trace with hash -1882894858, now seen corresponding path program 4 times [2022-04-08 08:59:54,347 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:54,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [460982870] [2022-04-08 08:59:54,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:54,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:54,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:54,432 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:54,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:54,436 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-08 08:59:54,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-08 08:59:54,436 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-08 08:59:54,437 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-08 08:59:54,437 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-08 08:59:54,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-08 08:59:54,437 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-08 08:59:54,437 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-08 08:59:54,438 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-08 08:59:54,438 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-08 08:59:54,438 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-08 08:59:54,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,438 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-08 08:59:54,438 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-08 08:59:54,438 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-08 08:59:54,438 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-08 08:59:54,438 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-08 08:59:54,439 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-08 08:59:54,439 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-08 08:59:54,440 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-08 08:59:54,440 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-08 08:59:54,440 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-08 08:59:54,441 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-08 08:59:54,441 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-08 08:59:54,441 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-08 08:59:54,442 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-08 08:59:54,442 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-08 08:59:54,442 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-08 08:59:54,443 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-08 08:59:54,443 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-08 08:59:54,443 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-08 08:59:54,443 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-08 08:59:54,443 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-08 08:59:54,443 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-08 08:59:54,444 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-08 08:59:54,444 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-08 08:59:54,444 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-08 08:59:54,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:54,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [460982870] [2022-04-08 08:59:54,444 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [460982870] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:54,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [346828126] [2022-04-08 08:59:54,444 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 08:59:54,444 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:54,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:54,445 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-08 08:59:54,468 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-08 08:59:54,515 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 08:59:54,515 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:54,516 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-08 08:59:54,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:54,525 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:54,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-08 08:59:54,698 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-08 08:59:54,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-08 08:59:54,698 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-08 08:59:54,699 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-08 08:59:54,699 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-08 08:59:54,699 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-08 08:59:54,699 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-08 08:59:54,699 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,702 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-08 08:59:54,702 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-08 08:59:54,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-08 08:59:54,703 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-08 08:59:54,703 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-08 08:59:54,703 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-08 08:59:54,704 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-08 08:59:54,705 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-08 08:59:54,705 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-08 08:59:54,705 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-08 08:59:54,706 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-08 08:59:54,706 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-08 08:59:54,706 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-08 08:59:54,707 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-08 08:59:54,708 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-08 08:59:54,708 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-08 08:59:54,708 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-08 08:59:54,709 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-08 08:59:54,709 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-08 08:59:54,709 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-08 08:59:54,709 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-08 08:59:54,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-08 08:59:54,709 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-08 08:59:54,709 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-08 08:59:54,710 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-08 08:59:54,710 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:54,862 INFO L290 TraceCheckUtils]: 33: Hoare triple {7266#false} assume !false; {7266#false} is VALID [2022-04-08 08:59:54,862 INFO L290 TraceCheckUtils]: 32: Hoare triple {7266#false} assume 0 == ~cond; {7266#false} is VALID [2022-04-08 08:59:54,862 INFO L290 TraceCheckUtils]: 31: Hoare triple {7266#false} ~cond := #in~cond; {7266#false} is VALID [2022-04-08 08:59:54,862 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-08 08:59:54,862 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-08 08:59:54,862 INFO L290 TraceCheckUtils]: 28: Hoare triple {7266#false} ~i~0 := 0; {7266#false} is VALID [2022-04-08 08:59:54,863 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-08 08:59:54,863 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-08 08:59:54,864 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-08 08:59:54,864 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-08 08:59:54,875 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-08 08:59:54,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-08 08:59:54,876 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-08 08:59:54,877 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-08 08:59:54,877 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-08 08:59:54,877 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-08 08:59:54,878 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-08 08:59:54,879 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-08 08:59:54,879 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-08 08:59:54,879 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-08 08:59:54,880 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-08 08:59:54,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {7265#true} ~i~0 := 0; {7265#true} is VALID [2022-04-08 08:59:54,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {7265#true} assume !(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,880 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-08 08:59:54,880 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-08 08:59:54,880 INFO L290 TraceCheckUtils]: 8: Hoare triple {7265#true} assume !!(~i~0 < ~nodecount~0); {7265#true} is VALID [2022-04-08 08:59:54,880 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-08 08:59:54,880 INFO L290 TraceCheckUtils]: 6: Hoare triple {7265#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {7265#true} is VALID [2022-04-08 08:59:54,880 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-08 08:59:54,880 INFO L272 TraceCheckUtils]: 4: Hoare triple {7265#true} call #t~ret22 := main(); {7265#true} is VALID [2022-04-08 08:59:54,880 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7265#true} {7265#true} #123#return; {7265#true} is VALID [2022-04-08 08:59:54,880 INFO L290 TraceCheckUtils]: 2: Hoare triple {7265#true} assume true; {7265#true} is VALID [2022-04-08 08:59:54,880 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-08 08:59:54,880 INFO L272 TraceCheckUtils]: 0: Hoare triple {7265#true} call ULTIMATE.init(); {7265#true} is VALID [2022-04-08 08:59:54,881 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-08 08:59:54,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [346828126] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:54,881 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:54,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2022-04-08 08:59:54,881 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:54,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [649283120] [2022-04-08 08:59:54,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [649283120] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:54,881 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:54,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 08:59:54,881 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1048747158] [2022-04-08 08:59:54,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:54,882 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-08 08:59:54,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:54,882 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-08 08:59:54,906 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-08 08:59:54,906 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 08:59:54,906 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:54,907 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 08:59:54,907 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-08 08:59:54,907 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-08 08:59:56,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:56,042 INFO L93 Difference]: Finished difference Result 240 states and 310 transitions. [2022-04-08 08:59:56,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 08:59:56,042 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-08 08:59:56,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:56,042 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-08 08:59:56,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-08 08:59:56,044 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-08 08:59:56,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2022-04-08 08:59:56,046 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 104 transitions. [2022-04-08 08:59:56,147 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-08 08:59:56,151 INFO L225 Difference]: With dead ends: 240 [2022-04-08 08:59:56,151 INFO L226 Difference]: Without dead ends: 219 [2022-04-08 08:59:56,152 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-08 08:59:56,152 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-08 08:59:56,152 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-08 08:59:56,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-08 08:59:56,555 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 174. [2022-04-08 08:59:56,556 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:56,556 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-08 08:59:56,556 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-08 08:59:56,557 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-08 08:59:56,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:56,563 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-08 08:59:56,563 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-08 08:59:56,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:56,563 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:56,564 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-08 08:59:56,564 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-08 08:59:56,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:56,570 INFO L93 Difference]: Finished difference Result 219 states and 286 transitions. [2022-04-08 08:59:56,570 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 286 transitions. [2022-04-08 08:59:56,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:56,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:56,571 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:56,571 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:56,571 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-08 08:59:56,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 229 transitions. [2022-04-08 08:59:56,577 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 229 transitions. Word has length 34 [2022-04-08 08:59:56,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:56,577 INFO L478 AbstractCegarLoop]: Abstraction has 174 states and 229 transitions. [2022-04-08 08:59:56,577 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-08 08:59:56,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 174 states and 229 transitions. [2022-04-08 08:59:56,995 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-08 08:59:56,995 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 229 transitions. [2022-04-08 08:59:56,995 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 08:59:56,995 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:56,996 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-08 08:59:57,012 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 08:59:57,199 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-08 08:59:57,199 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:57,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:57,200 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 5 times [2022-04-08 08:59:57,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:57,200 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1779697250] [2022-04-08 08:59:57,203 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:57,203 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:57,203 INFO L85 PathProgramCache]: Analyzing trace with hash -1856507910, now seen corresponding path program 6 times [2022-04-08 08:59:57,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:57,203 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1297029094] [2022-04-08 08:59:57,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:57,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:57,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:57,254 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:57,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:57,257 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-08 08:59:57,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-08 08:59:57,258 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-08 08:59:57,258 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-08 08:59:57,258 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-08 08:59:57,258 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-08 08:59:57,258 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-08 08:59:57,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-08 08:59:57,259 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-08 08:59:57,259 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-08 08:59:57,261 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-08 08:59:57,261 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-08 08:59:57,262 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-08 08:59:57,262 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-08 08:59:57,262 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-08 08:59:57,263 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-08 08:59:57,263 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-08 08:59:57,263 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,263 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-08 08:59:57,263 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-08 08:59:57,263 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,263 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,263 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,263 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,264 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-08 08:59:57,264 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,264 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,264 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-08 08:59:57,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,264 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,264 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,264 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-08 08:59:57,264 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-08 08:59:57,264 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-08 08:59:57,264 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-08 08:59:57,265 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-08 08:59:57,265 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-08 08:59:57,265 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:57,265 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1297029094] [2022-04-08 08:59:57,265 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1297029094] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:57,265 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1278939788] [2022-04-08 08:59:57,265 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 08:59:57,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:57,266 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:57,266 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-08 08:59:57,294 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-08 08:59:57,352 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2022-04-08 08:59:57,353 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:57,354 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 08:59:57,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:57,370 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:57,477 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-08 08:59:57,477 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-08 08:59:57,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-08 08:59:57,477 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #123#return; {8765#true} is VALID [2022-04-08 08:59:57,477 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret22 := main(); {8765#true} is VALID [2022-04-08 08:59:57,477 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-08 08:59:57,478 INFO L290 TraceCheckUtils]: 6: Hoare triple {8765#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {8765#true} is VALID [2022-04-08 08:59:57,479 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-08 08:59:57,480 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-08 08:59:57,480 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-08 08:59:57,480 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-08 08:59:57,481 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-08 08:59:57,481 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-08 08:59:57,481 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-08 08:59:57,481 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,481 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-08 08:59:57,481 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-08 08:59:57,482 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,482 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-08 08:59:57,482 INFO L290 TraceCheckUtils]: 22: Hoare triple {8766#false} assume !!(~i~0 < ~nodecount~0);~j~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 23: Hoare triple {8766#false} assume !(~j~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,482 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-08 08:59:57,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {8766#false} assume !(~i~0 < ~nodecount~0); {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 26: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 27: Hoare triple {8766#false} assume !(~i~0 < ~edgecount~0); {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 28: Hoare triple {8766#false} ~i~0 := 0; {8766#false} is VALID [2022-04-08 08:59:57,482 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-08 08:59:57,482 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-08 08:59:57,482 INFO L290 TraceCheckUtils]: 31: Hoare triple {8766#false} ~cond := #in~cond; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 32: Hoare triple {8766#false} assume 0 == ~cond; {8766#false} is VALID [2022-04-08 08:59:57,482 INFO L290 TraceCheckUtils]: 33: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-08 08:59:57,483 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-08 08:59:57,483 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 08:59:57,483 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1278939788] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:57,483 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 08:59:57,483 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 7 [2022-04-08 08:59:57,483 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:57,483 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1779697250] [2022-04-08 08:59:57,483 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1779697250] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:57,483 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:57,483 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 08:59:57,484 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [45681106] [2022-04-08 08:59:57,484 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:57,484 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-08 08:59:57,484 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:57,484 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-08 08:59:57,504 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-08 08:59:57,504 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 08:59:57,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:57,507 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 08:59:57,507 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 08:59:57,507 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-08 08:59:58,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:58,063 INFO L93 Difference]: Finished difference Result 292 states and 382 transitions. [2022-04-08 08:59:58,064 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 08:59:58,064 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-08 08:59:58,064 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 08:59:58,064 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-08 08:59:58,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-08 08:59:58,066 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-08 08:59:58,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 88 transitions. [2022-04-08 08:59:58,067 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 88 transitions. [2022-04-08 08:59:58,123 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-08 08:59:58,125 INFO L225 Difference]: With dead ends: 292 [2022-04-08 08:59:58,125 INFO L226 Difference]: Without dead ends: 154 [2022-04-08 08:59:58,126 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-08 08:59:58,127 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-08 08:59:58,127 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-08 08:59:58,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-04-08 08:59:58,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 139. [2022-04-08 08:59:58,503 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 08:59:58,504 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-08 08:59:58,504 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-08 08:59:58,504 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-08 08:59:58,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:58,507 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-08 08:59:58,507 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-08 08:59:58,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:58,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:58,507 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-08 08:59:58,507 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-08 08:59:58,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 08:59:58,510 INFO L93 Difference]: Finished difference Result 154 states and 193 transitions. [2022-04-08 08:59:58,510 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 193 transitions. [2022-04-08 08:59:58,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 08:59:58,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 08:59:58,511 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 08:59:58,511 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 08:59:58,511 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-08 08:59:58,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 175 transitions. [2022-04-08 08:59:58,514 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 175 transitions. Word has length 34 [2022-04-08 08:59:58,514 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 08:59:58,514 INFO L478 AbstractCegarLoop]: Abstraction has 139 states and 175 transitions. [2022-04-08 08:59:58,514 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-08 08:59:58,514 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 139 states and 175 transitions. [2022-04-08 08:59:58,782 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-08 08:59:58,782 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 175 transitions. [2022-04-08 08:59:58,783 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 08:59:58,783 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 08:59:58,783 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-08 08:59:58,799 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-08 08:59:58,983 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-08 08:59:58,984 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 08:59:58,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 08:59:58,984 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 7 times [2022-04-08 08:59:58,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:58,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [545625656] [2022-04-08 08:59:58,991 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 08:59:58,991 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 08:59:58,991 INFO L85 PathProgramCache]: Analyzing trace with hash -1637653192, now seen corresponding path program 8 times [2022-04-08 08:59:58,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 08:59:58,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1756439414] [2022-04-08 08:59:58,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 08:59:58,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 08:59:59,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:59,076 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 08:59:59,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:59,089 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-08 08:59:59,089 INFO L290 TraceCheckUtils]: 1: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-08 08:59:59,089 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-08 08:59:59,090 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-08 08:59:59,090 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-08 08:59:59,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-08 08:59:59,090 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-08 08:59:59,090 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-08 08:59:59,090 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-08 08:59:59,090 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-08 08:59:59,091 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-08 08:59:59,091 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-08 08:59:59,091 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-08 08:59:59,092 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-08 08:59:59,092 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-08 08:59:59,093 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-08 08:59:59,093 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-08 08:59:59,094 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-08 08:59:59,094 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-08 08:59:59,094 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-08 08:59:59,095 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-08 08:59:59,095 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-08 08:59:59,095 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-08 08:59:59,096 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-08 08:59:59,096 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-08 08:59:59,097 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-08 08:59:59,097 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-08 08:59:59,098 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-08 08:59:59,098 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-08 08:59:59,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-08 08:59:59,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,098 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-08 08:59:59,099 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-08 08:59:59,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-08 08:59:59,099 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-08 08:59:59,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-08 08:59:59,099 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-08 08:59:59,099 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 08:59:59,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1756439414] [2022-04-08 08:59:59,099 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1756439414] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 08:59:59,100 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2069325677] [2022-04-08 08:59:59,100 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 08:59:59,100 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 08:59:59,100 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 08:59:59,101 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-08 08:59:59,128 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-08 08:59:59,212 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 08:59:59,212 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 08:59:59,213 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 08:59:59,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 08:59:59,226 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 08:59:59,445 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-08 08:59:59,446 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-08 08:59:59,446 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-08 08:59:59,446 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-08 08:59:59,446 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-08 08:59:59,446 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-08 08:59:59,446 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-08 08:59:59,448 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-08 08:59:59,449 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-08 08:59:59,449 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-08 08:59:59,449 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-08 08:59:59,450 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-08 08:59:59,450 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-08 08:59:59,451 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-08 08:59:59,451 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-08 08:59:59,451 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-08 08:59:59,452 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-08 08:59:59,452 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-08 08:59:59,453 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-08 08:59:59,453 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-08 08:59:59,453 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-08 08:59:59,454 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-08 08:59:59,454 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-08 08:59:59,455 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-08 08:59:59,455 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-08 08:59:59,456 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-08 08:59:59,456 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,456 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-08 08:59:59,456 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,456 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-08 08:59:59,456 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-08 08:59:59,456 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-08 08:59:59,456 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-08 08:59:59,456 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-08 08:59:59,457 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-08 08:59:59,457 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 08:59:59,599 INFO L290 TraceCheckUtils]: 33: Hoare triple {10047#false} assume !false; {10047#false} is VALID [2022-04-08 08:59:59,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {10047#false} assume 0 == ~cond; {10047#false} is VALID [2022-04-08 08:59:59,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {10047#false} ~cond := #in~cond; {10047#false} is VALID [2022-04-08 08:59:59,599 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-08 08:59:59,599 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-08 08:59:59,599 INFO L290 TraceCheckUtils]: 28: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,599 INFO L290 TraceCheckUtils]: 27: Hoare triple {10047#false} assume !(~i~0 < ~edgecount~0); {10047#false} is VALID [2022-04-08 08:59:59,600 INFO L290 TraceCheckUtils]: 26: Hoare triple {10047#false} ~i~0 := 0; {10047#false} is VALID [2022-04-08 08:59:59,600 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-08 08:59:59,600 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-08 08:59:59,601 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-08 08:59:59,601 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-08 08:59:59,601 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-08 08:59:59,602 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-08 08:59:59,602 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-08 08:59:59,602 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-08 08:59:59,603 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-08 08:59:59,603 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-08 08:59:59,603 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-08 08:59:59,603 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-08 08:59:59,604 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-08 08:59:59,604 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-08 08:59:59,604 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-08 08:59:59,605 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-08 08:59:59,605 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-08 08:59:59,606 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-08 08:59:59,608 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-08 08:59:59,608 INFO L290 TraceCheckUtils]: 6: Hoare triple {10046#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {10046#true} is VALID [2022-04-08 08:59:59,608 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-08 08:59:59,608 INFO L272 TraceCheckUtils]: 4: Hoare triple {10046#true} call #t~ret22 := main(); {10046#true} is VALID [2022-04-08 08:59:59,608 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10046#true} {10046#true} #123#return; {10046#true} is VALID [2022-04-08 08:59:59,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {10046#true} assume true; {10046#true} is VALID [2022-04-08 08:59:59,608 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-08 08:59:59,609 INFO L272 TraceCheckUtils]: 0: Hoare triple {10046#true} call ULTIMATE.init(); {10046#true} is VALID [2022-04-08 08:59:59,609 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-08 08:59:59,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2069325677] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 08:59:59,609 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 08:59:59,609 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-08 08:59:59,609 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 08:59:59,609 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [545625656] [2022-04-08 08:59:59,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [545625656] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 08:59:59,610 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 08:59:59,610 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 08:59:59,610 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [283799654] [2022-04-08 08:59:59,610 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 08:59:59,610 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-08 08:59:59,610 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 08:59:59,611 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-08 08:59:59,635 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-08 08:59:59,636 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 08:59:59,636 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 08:59:59,636 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 08:59:59,636 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=155, Unknown=0, NotChecked=0, Total=210 [2022-04-08 08:59:59,636 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-08 09:00:01,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:01,581 INFO L93 Difference]: Finished difference Result 296 states and 374 transitions. [2022-04-08 09:00:01,581 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 09:00:01,581 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-08 09:00:01,582 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:01,582 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-08 09:00:01,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-08 09:00:01,583 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-08 09:00:01,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 151 transitions. [2022-04-08 09:00:01,585 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 151 transitions. [2022-04-08 09:00:01,721 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-08 09:00:01,726 INFO L225 Difference]: With dead ends: 296 [2022-04-08 09:00:01,726 INFO L226 Difference]: Without dead ends: 275 [2022-04-08 09:00:01,727 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-08 09:00:01,728 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-08 09:00:01,728 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-08 09:00:01,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2022-04-08 09:00:02,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 154. [2022-04-08 09:00:02,227 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:02,227 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-08 09:00:02,227 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-08 09:00:02,228 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-08 09:00:02,233 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:02,234 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-08 09:00:02,234 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-08 09:00:02,234 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:02,234 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:02,235 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-08 09:00:02,235 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-08 09:00:02,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:02,242 INFO L93 Difference]: Finished difference Result 275 states and 349 transitions. [2022-04-08 09:00:02,242 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 349 transitions. [2022-04-08 09:00:02,242 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:02,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:02,242 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:02,242 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:02,242 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-08 09:00:02,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 195 transitions. [2022-04-08 09:00:02,245 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 195 transitions. Word has length 34 [2022-04-08 09:00:02,245 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:02,245 INFO L478 AbstractCegarLoop]: Abstraction has 154 states and 195 transitions. [2022-04-08 09:00:02,245 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-08 09:00:02,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 154 states and 195 transitions. [2022-04-08 09:00:02,567 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-08 09:00:02,567 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 195 transitions. [2022-04-08 09:00:02,568 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-08 09:00:02,568 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:02,568 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-08 09:00:02,584 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-08 09:00:02,768 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-08 09:00:02,769 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:02,769 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:02,769 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 5 times [2022-04-08 09:00:02,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:02,769 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1203561452] [2022-04-08 09:00:02,771 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:02,771 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:02,771 INFO L85 PathProgramCache]: Analyzing trace with hash -1470221714, now seen corresponding path program 6 times [2022-04-08 09:00:02,771 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:02,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1283333617] [2022-04-08 09:00:02,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:02,772 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:02,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:03,518 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:03,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:03,529 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-08 09:00:03,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-08 09:00:03,529 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-08 09:00:03,530 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-08 09:00:03,530 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-08 09:00:03,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-08 09:00:03,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-08 09:00:03,530 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-08 09:00:03,530 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-08 09:00:03,530 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-08 09:00:03,534 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-08 09:00:03,534 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-08 09:00:03,535 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-08 09:00:03,536 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-08 09:00:03,536 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-08 09:00:03,537 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-08 09:00:03,538 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-08 09:00:03,539 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-08 09:00:03,539 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-08 09:00:03,540 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-08 09:00:03,541 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-08 09:00:03,542 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-08 09:00:03,542 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-08 09:00:03,543 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-08 09:00:03,543 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-08 09:00:03,544 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-08 09:00:03,544 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-08 09:00:03,544 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-08 09:00:03,545 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-08 09:00:03,545 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-08 09:00:03,546 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-08 09:00:03,546 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-08 09:00:03,546 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-08 09:00:03,547 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-08 09:00:03,547 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-08 09:00:03,548 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-08 09:00:03,548 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-08 09:00:03,548 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-08 09:00:03,549 INFO L290 TraceCheckUtils]: 35: Hoare triple {11753#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {11736#false} is VALID [2022-04-08 09:00:03,549 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-08 09:00:03,549 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-08 09:00:03,549 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:03,549 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1283333617] [2022-04-08 09:00:03,549 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1283333617] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 09:00:03,549 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1062326447] [2022-04-08 09:00:03,550 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 09:00:03,550 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 09:00:03,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 09:00:03,550 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-08 09:00:03,552 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-08 09:00:03,657 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-08 09:00:03,657 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 09:00:03,659 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 09:00:03,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:03,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 09:00:03,753 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-08 09:00:03,901 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:03,902 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:03,902 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:03,904 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-08 09:00:04,217 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:04,218 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:04,219 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:04,219 INFO L173 IndexEqualityManager]: detected equality via solver [2022-04-08 09:00:04,220 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:04,228 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-08 09:00:04,229 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-08 09:00:04,549 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-04-08 09:00:04,549 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-08 09:00:05,605 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-08 09:00:05,743 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-08 09:00:05,743 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-08 09:00:05,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-08 09:00:05,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-08 09:00:05,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-08 09:00:05,743 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-08 09:00:05,743 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-08 09:00:05,747 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-08 09:00:05,747 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-08 09:00:05,748 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-08 09:00:05,749 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-08 09:00:05,750 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-08 09:00:05,750 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-08 09:00:05,751 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-08 09:00:05,752 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-08 09:00:05,753 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-08 09:00:05,753 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-08 09:00:05,755 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-08 09:00:05,756 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-08 09:00:05,757 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-08 09:00:05,758 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-08 09:00:05,759 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-08 09:00:05,760 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-08 09:00:05,760 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-08 09:00:05,762 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-08 09:00:05,762 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-08 09:00:05,763 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-08 09:00:05,764 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-08 09:00:05,765 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-08 09:00:05,766 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-08 09:00:05,767 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-08 09:00:05,768 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-08 09:00:05,768 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-08 09:00:05,769 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-08 09:00:05,769 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:05,770 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-08 09:00:05,770 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-08 09:00:05,770 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-08 09:00:05,770 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 09:00:08,083 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-08 09:00:08,555 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-08 09:00:09,415 WARN L833 $PredicateComparison]: unable to prove that (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|) (+ (* 4 c_main_~x~0) |c_main_~#distance~0.offset|) 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-08 09:00:11,761 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-08 09:00:14,068 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-08 09:00:17,386 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-08 09:00:18,765 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#false} assume !false; {11736#false} is VALID [2022-04-08 09:00:18,766 INFO L290 TraceCheckUtils]: 35: Hoare triple {11870#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11736#false} is VALID [2022-04-08 09:00:18,766 INFO L290 TraceCheckUtils]: 34: Hoare triple {11866#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11870#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:18,767 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-08 09:00:18,767 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-08 09:00:18,768 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-08 09:00:18,768 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-08 09:00:18,768 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-08 09:00:18,768 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-08 09:00:18,769 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-08 09:00:18,769 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-08 09:00:18,769 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-08 09:00:18,769 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-08 09:00:18,770 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-08 09:00:18,770 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-08 09:00:18,770 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-08 09:00:18,771 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-08 09:00:18,771 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-08 09:00:18,772 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-08 09:00:18,773 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-08 09:00:18,774 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-08 09:00:18,775 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-08 09:00:18,776 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-08 09:00:18,778 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-08 09:00:18,778 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-08 09:00:18,779 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-08 09:00:18,779 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-08 09:00:18,781 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-08 09:00:18,782 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-08 09:00:18,785 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-08 09:00:18,785 INFO L290 TraceCheckUtils]: 6: Hoare triple {11735#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {11735#true} is VALID [2022-04-08 09:00:18,785 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-08 09:00:18,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {11735#true} call #t~ret22 := main(); {11735#true} is VALID [2022-04-08 09:00:18,787 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11735#true} {11735#true} #123#return; {11735#true} is VALID [2022-04-08 09:00:18,787 INFO L290 TraceCheckUtils]: 2: Hoare triple {11735#true} assume true; {11735#true} is VALID [2022-04-08 09:00:18,787 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-08 09:00:18,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {11735#true} call ULTIMATE.init(); {11735#true} is VALID [2022-04-08 09:00:18,788 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 7 not checked. [2022-04-08 09:00:18,788 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1062326447] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 09:00:18,788 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 09:00:18,788 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 14] total 37 [2022-04-08 09:00:18,788 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 09:00:18,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1203561452] [2022-04-08 09:00:18,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1203561452] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:18,789 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:18,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 09:00:18,789 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1030816754] [2022-04-08 09:00:18,789 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 09:00:18,789 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-08 09:00:18,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 09:00:18,790 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-08 09:00:18,819 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-08 09:00:18,819 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 09:00:18,819 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:18,820 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 09:00:18,820 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=132, Invalid=816, Unknown=6, NotChecked=378, Total=1332 [2022-04-08 09:00:18,820 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-08 09:00:20,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:20,879 INFO L93 Difference]: Finished difference Result 187 states and 232 transitions. [2022-04-08 09:00:20,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 09:00:20,880 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-08 09:00:20,880 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:20,880 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-08 09:00:20,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-08 09:00:20,882 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-08 09:00:20,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-08 09:00:20,884 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 89 transitions. [2022-04-08 09:00:20,978 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-08 09:00:20,980 INFO L225 Difference]: With dead ends: 187 [2022-04-08 09:00:20,980 INFO L226 Difference]: Without dead ends: 164 [2022-04-08 09:00:20,981 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 55 SyntacticMatches, 2 SemanticMatches, 47 ConstructedPredicates, 6 IntricatePredicates, 0 DeprecatedPredicates, 407 ImplicationChecksByTransitivity, 10.0s TimeCoverageRelationStatistics Valid=271, Invalid=1553, Unknown=6, NotChecked=522, Total=2352 [2022-04-08 09:00:20,982 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-08 09:00:20,982 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-08 09:00:20,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-08 09:00:21,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 157. [2022-04-08 09:00:21,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:21,518 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-08 09:00:21,518 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-08 09:00:21,519 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-08 09:00:21,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:21,522 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 09:00:21,522 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-08 09:00:21,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:21,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:21,523 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-08 09:00:21,523 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-08 09:00:21,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:21,527 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 09:00:21,527 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-08 09:00:21,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:21,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:21,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:21,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:21,528 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-08 09:00:21,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 199 transitions. [2022-04-08 09:00:21,531 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 199 transitions. Word has length 37 [2022-04-08 09:00:21,531 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:21,531 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 199 transitions. [2022-04-08 09:00:21,531 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-08 09:00:21,531 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 199 transitions. [2022-04-08 09:00:21,891 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-08 09:00:21,891 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 199 transitions. [2022-04-08 09:00:21,891 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-08 09:00:21,891 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:21,892 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-08 09:00:21,908 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-08 09:00:22,095 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-08 09:00:22,096 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:22,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:22,096 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 1 times [2022-04-08 09:00:22,096 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:22,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1183119866] [2022-04-08 09:00:22,115 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:22,115 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:22,115 INFO L85 PathProgramCache]: Analyzing trace with hash -651731607, now seen corresponding path program 2 times [2022-04-08 09:00:22,115 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:22,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [800554566] [2022-04-08 09:00:22,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:22,115 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:22,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:22,198 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:22,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:22,202 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-08 09:00:22,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-08 09:00:22,202 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-08 09:00:22,203 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-08 09:00:22,203 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-08 09:00:22,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {13036#true} assume true; {13036#true} is VALID [2022-04-08 09:00:22,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13036#true} {13036#true} #123#return; {13036#true} is VALID [2022-04-08 09:00:22,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {13036#true} call #t~ret22 := main(); {13036#true} is VALID [2022-04-08 09:00:22,203 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-08 09:00:22,203 INFO L290 TraceCheckUtils]: 6: Hoare triple {13036#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {13036#true} is VALID [2022-04-08 09:00:22,203 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-08 09:00:22,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-08 09:00:22,204 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-08 09:00:22,204 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-08 09:00:22,204 INFO L290 TraceCheckUtils]: 11: Hoare triple {13036#true} assume !!(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-08 09:00:22,204 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-08 09:00:22,204 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-08 09:00:22,204 INFO L290 TraceCheckUtils]: 14: Hoare triple {13036#true} assume !(~i~0 < ~nodecount~0); {13036#true} is VALID [2022-04-08 09:00:22,204 INFO L290 TraceCheckUtils]: 15: Hoare triple {13036#true} ~i~0 := 0; {13036#true} is VALID [2022-04-08 09:00:22,204 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-08 09:00:22,205 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-08 09:00:22,205 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-08 09:00:22,205 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-08 09:00:22,206 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-08 09:00:22,206 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-08 09:00:22,206 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-08 09:00:22,206 INFO L290 TraceCheckUtils]: 23: Hoare triple {13037#false} assume !(~j~0 < ~edgecount~0); {13037#false} is VALID [2022-04-08 09:00:22,206 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-08 09:00:22,206 INFO L290 TraceCheckUtils]: 25: Hoare triple {13037#false} assume !(~i~0 < ~nodecount~0); {13037#false} is VALID [2022-04-08 09:00:22,206 INFO L290 TraceCheckUtils]: 26: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-08 09:00:22,206 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-08 09:00:22,207 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-08 09:00:22,207 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-08 09:00:22,207 INFO L290 TraceCheckUtils]: 30: Hoare triple {13037#false} assume !(~i~0 < ~edgecount~0); {13037#false} is VALID [2022-04-08 09:00:22,207 INFO L290 TraceCheckUtils]: 31: Hoare triple {13037#false} ~i~0 := 0; {13037#false} is VALID [2022-04-08 09:00:22,207 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-08 09:00:22,207 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-08 09:00:22,207 INFO L290 TraceCheckUtils]: 34: Hoare triple {13037#false} ~cond := #in~cond; {13037#false} is VALID [2022-04-08 09:00:22,207 INFO L290 TraceCheckUtils]: 35: Hoare triple {13037#false} assume 0 == ~cond; {13037#false} is VALID [2022-04-08 09:00:22,207 INFO L290 TraceCheckUtils]: 36: Hoare triple {13037#false} assume !false; {13037#false} is VALID [2022-04-08 09:00:22,207 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-08 09:00:22,208 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:22,208 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [800554566] [2022-04-08 09:00:22,208 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [800554566] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:22,208 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:22,208 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 09:00:22,208 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 09:00:22,208 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1183119866] [2022-04-08 09:00:22,208 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1183119866] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:22,208 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:22,208 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 09:00:22,208 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1743546989] [2022-04-08 09:00:22,208 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 09:00:22,210 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-08 09:00:22,210 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 09:00:22,210 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-08 09:00:22,234 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-08 09:00:22,234 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 09:00:22,234 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:22,234 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 09:00:22,235 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 09:00:22,235 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-08 09:00:23,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:23,105 INFO L93 Difference]: Finished difference Result 247 states and 314 transitions. [2022-04-08 09:00:23,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 09:00:23,105 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-08 09:00:23,106 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:23,106 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-08 09:00:23,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-08 09:00:23,107 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-08 09:00:23,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-04-08 09:00:23,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 83 transitions. [2022-04-08 09:00:23,187 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-08 09:00:23,190 INFO L225 Difference]: With dead ends: 247 [2022-04-08 09:00:23,190 INFO L226 Difference]: Without dead ends: 177 [2022-04-08 09:00:23,190 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-08 09:00:23,191 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-08 09:00:23,191 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-08 09:00:23,191 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-08 09:00:23,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 157. [2022-04-08 09:00:23,728 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:23,731 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-08 09:00:23,731 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-08 09:00:23,732 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-08 09:00:23,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:23,736 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-08 09:00:23,736 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-08 09:00:23,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:23,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:23,737 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-08 09:00:23,737 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-08 09:00:23,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:23,744 INFO L93 Difference]: Finished difference Result 177 states and 223 transitions. [2022-04-08 09:00:23,744 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 223 transitions. [2022-04-08 09:00:23,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:23,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:23,745 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:23,745 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:23,745 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-08 09:00:23,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 196 transitions. [2022-04-08 09:00:23,748 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 196 transitions. Word has length 37 [2022-04-08 09:00:23,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:23,748 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 196 transitions. [2022-04-08 09:00:23,749 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-08 09:00:23,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 196 transitions. [2022-04-08 09:00:24,093 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-08 09:00:24,093 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 196 transitions. [2022-04-08 09:00:24,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-08 09:00:24,094 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:24,094 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-08 09:00:24,094 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-04-08 09:00:24,094 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:24,095 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:24,095 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 9 times [2022-04-08 09:00:24,095 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:24,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1877864147] [2022-04-08 09:00:24,098 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:24,098 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:24,098 INFO L85 PathProgramCache]: Analyzing trace with hash 1411406606, now seen corresponding path program 10 times [2022-04-08 09:00:24,098 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:24,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1890072744] [2022-04-08 09:00:24,099 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:24,099 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:24,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:24,293 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:24,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:24,297 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-08 09:00:24,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-08 09:00:24,297 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-08 09:00:24,297 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-08 09:00:24,297 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-08 09:00:24,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-08 09:00:24,298 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-08 09:00:24,298 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-08 09:00:24,298 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-08 09:00:24,298 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-08 09:00:24,300 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-08 09:00:24,301 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-08 09:00:24,301 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-08 09:00:24,302 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-08 09:00:24,302 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-08 09:00:24,303 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-08 09:00:24,304 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-08 09:00:24,304 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-08 09:00:24,305 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-08 09:00:24,305 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-08 09:00:24,306 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-08 09:00:24,306 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-08 09:00:24,307 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-08 09:00:24,307 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-08 09:00:24,308 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-08 09:00:24,308 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-08 09:00:24,308 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-08 09:00:24,309 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-08 09:00:24,309 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-08 09:00:24,310 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-08 09:00:24,310 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-08 09:00:24,311 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-08 09:00:24,311 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-08 09:00:24,312 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-08 09:00:24,312 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-08 09:00:24,313 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-08 09:00:24,313 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-08 09:00:24,313 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-08 09:00:24,314 INFO L290 TraceCheckUtils]: 35: Hoare triple {14226#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {14214#false} is VALID [2022-04-08 09:00:24,314 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-08 09:00:24,314 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-08 09:00:24,314 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:24,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1890072744] [2022-04-08 09:00:24,315 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1890072744] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 09:00:24,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1088869403] [2022-04-08 09:00:24,315 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 09:00:24,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 09:00:24,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 09:00:24,316 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-08 09:00:24,317 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-08 09:00:24,387 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 09:00:24,387 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 09:00:24,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 09:00:24,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:24,400 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 09:00:24,445 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-08 09:00:24,501 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-08 09:00:24,502 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-08 09:00:24,568 INFO L356 Elim1Store]: treesize reduction 40, result has 23.1 percent of original size [2022-04-08 09:00:24,569 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-08 09:00:25,935 INFO L356 Elim1Store]: treesize reduction 10, result has 23.1 percent of original size [2022-04-08 09:00:25,935 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-08 09:00:26,060 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-08 09:00:26,061 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-08 09:00:26,061 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-08 09:00:26,061 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-08 09:00:26,061 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-08 09:00:26,061 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-08 09:00:26,061 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-08 09:00:26,061 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-08 09:00:26,061 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-08 09:00:26,062 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-08 09:00:26,062 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-08 09:00:26,063 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-08 09:00:26,063 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-08 09:00:26,064 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-08 09:00:26,064 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-08 09:00:26,065 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-08 09:00:26,066 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-08 09:00:26,067 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-08 09:00:26,067 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-08 09:00:26,068 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-08 09:00:26,069 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-08 09:00:26,070 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-08 09:00:26,070 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-08 09:00:26,071 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-08 09:00:26,072 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-08 09:00:26,072 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-08 09:00:26,073 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-08 09:00:26,074 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-08 09:00:26,074 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-08 09:00:26,075 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-08 09:00:26,076 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-08 09:00:26,076 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-08 09:00:26,077 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-08 09:00:26,077 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-08 09:00:26,078 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:26,078 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-08 09:00:26,078 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-08 09:00:26,078 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-08 09:00:26,078 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 09:00:26,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {14214#false} assume !false; {14214#false} is VALID [2022-04-08 09:00:26,899 INFO L290 TraceCheckUtils]: 35: Hoare triple {14348#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14214#false} is VALID [2022-04-08 09:00:26,899 INFO L290 TraceCheckUtils]: 34: Hoare triple {14344#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14348#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:26,900 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-08 09:00:26,900 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-08 09:00:26,901 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-08 09:00:26,901 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-08 09:00:26,901 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-08 09:00:26,902 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-08 09:00:26,902 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-08 09:00:26,902 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-08 09:00:26,903 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-08 09:00:26,903 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-08 09:00:26,904 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-08 09:00:26,904 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-08 09:00:26,905 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-08 09:00:26,905 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-08 09:00:26,905 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-08 09:00:26,906 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-08 09:00:26,906 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-08 09:00:26,906 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-08 09:00:26,907 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-08 09:00:26,908 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-08 09:00:26,908 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-08 09:00:26,909 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-08 09:00:26,909 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-08 09:00:26,909 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-08 09:00:26,910 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-08 09:00:26,910 INFO L290 TraceCheckUtils]: 8: Hoare triple {14213#true} assume !!(~i~0 < ~nodecount~0); {14213#true} is VALID [2022-04-08 09:00:26,910 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-08 09:00:26,910 INFO L290 TraceCheckUtils]: 6: Hoare triple {14213#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {14213#true} is VALID [2022-04-08 09:00:26,910 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-08 09:00:26,910 INFO L272 TraceCheckUtils]: 4: Hoare triple {14213#true} call #t~ret22 := main(); {14213#true} is VALID [2022-04-08 09:00:26,910 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14213#true} {14213#true} #123#return; {14213#true} is VALID [2022-04-08 09:00:26,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {14213#true} assume true; {14213#true} is VALID [2022-04-08 09:00:26,911 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-08 09:00:26,911 INFO L272 TraceCheckUtils]: 0: Hoare triple {14213#true} call ULTIMATE.init(); {14213#true} is VALID [2022-04-08 09:00:26,911 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-08 09:00:26,911 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1088869403] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 09:00:26,911 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 09:00:26,911 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 18, 18] total 40 [2022-04-08 09:00:26,912 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 09:00:26,912 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1877864147] [2022-04-08 09:00:26,912 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1877864147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:26,912 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:26,912 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 09:00:26,912 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [5351119] [2022-04-08 09:00:26,912 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 09:00:26,912 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-08 09:00:26,912 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 09:00:26,912 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-08 09:00:26,935 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-08 09:00:26,935 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 09:00:26,936 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:26,936 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 09:00:26,936 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=244, Invalid=1316, Unknown=0, NotChecked=0, Total=1560 [2022-04-08 09:00:26,936 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-08 09:00:28,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:28,631 INFO L93 Difference]: Finished difference Result 237 states and 298 transitions. [2022-04-08 09:00:28,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 09:00:28,632 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-08 09:00:28,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:28,632 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-08 09:00:28,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-08 09:00:28,634 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-08 09:00:28,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 87 transitions. [2022-04-08 09:00:28,636 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 87 transitions. [2022-04-08 09:00:28,729 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-08 09:00:28,733 INFO L225 Difference]: With dead ends: 237 [2022-04-08 09:00:28,733 INFO L226 Difference]: Without dead ends: 235 [2022-04-08 09:00:28,734 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-08 09:00:28,734 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-08 09:00:28,735 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-08 09:00:28,738 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 235 states. [2022-04-08 09:00:29,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 235 to 162. [2022-04-08 09:00:29,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:29,491 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-08 09:00:29,491 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-08 09:00:29,492 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-08 09:00:29,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:29,496 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-08 09:00:29,496 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-08 09:00:29,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:29,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:29,497 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-08 09:00:29,497 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-08 09:00:29,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:29,502 INFO L93 Difference]: Finished difference Result 235 states and 296 transitions. [2022-04-08 09:00:29,502 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 296 transitions. [2022-04-08 09:00:29,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:29,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:29,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:29,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:29,503 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-08 09:00:29,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 203 transitions. [2022-04-08 09:00:29,506 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 203 transitions. Word has length 37 [2022-04-08 09:00:29,506 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:29,506 INFO L478 AbstractCegarLoop]: Abstraction has 162 states and 203 transitions. [2022-04-08 09:00:29,506 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-08 09:00:29,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 162 states and 203 transitions. [2022-04-08 09:00:29,922 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-08 09:00:29,923 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 203 transitions. [2022-04-08 09:00:29,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 09:00:29,923 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:29,923 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-08 09:00:29,939 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-08 09:00:30,124 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-08 09:00:30,124 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:30,124 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:30,124 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 1 times [2022-04-08 09:00:30,125 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:30,125 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1210947606] [2022-04-08 09:00:30,128 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:30,128 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:30,128 INFO L85 PathProgramCache]: Analyzing trace with hash 524779340, now seen corresponding path program 2 times [2022-04-08 09:00:30,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:30,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2066687723] [2022-04-08 09:00:30,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:30,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:30,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:30,333 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:30,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:30,351 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-08 09:00:30,352 INFO L290 TraceCheckUtils]: 1: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:30,352 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:30,352 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-08 09:00:30,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:30,356 INFO L290 TraceCheckUtils]: 0: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-08 09:00:30,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-08 09:00:30,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-08 09:00:30,357 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-08 09:00:30,357 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-08 09:00:30,358 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-08 09:00:30,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:30,358 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:30,359 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:30,359 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-08 09:00:30,360 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-08 09:00:30,362 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-08 09:00:30,362 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-08 09:00:30,363 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-08 09:00:30,363 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-08 09:00:30,364 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-08 09:00:30,365 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-08 09:00:30,365 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-08 09:00:30,366 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-08 09:00:30,366 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-08 09:00:30,366 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-08 09:00:30,367 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-08 09:00:30,367 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-08 09:00:30,368 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-08 09:00:30,368 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-08 09:00:30,369 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-08 09:00:30,369 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-08 09:00:30,370 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-08 09:00:30,370 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-08 09:00:30,371 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-08 09:00:30,371 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-08 09:00:30,371 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-08 09:00:30,371 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-08 09:00:30,371 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-08 09:00:30,372 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-08 09:00:30,372 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-08 09:00:30,373 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-08 09:00:30,373 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-08 09:00:30,374 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-08 09:00:30,374 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-08 09:00:30,375 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-08 09:00:30,375 INFO L290 TraceCheckUtils]: 37: Hoare triple {15777#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {15760#false} is VALID [2022-04-08 09:00:30,375 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-08 09:00:30,376 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-08 09:00:30,376 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:30,376 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2066687723] [2022-04-08 09:00:30,376 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2066687723] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 09:00:30,376 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [205644511] [2022-04-08 09:00:30,376 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 09:00:30,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 09:00:30,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 09:00:30,379 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-08 09:00:30,382 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-08 09:00:30,469 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 09:00:30,470 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 09:00:30,471 INFO L263 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 09:00:30,480 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:30,481 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 09:00:30,600 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-08 09:00:32,861 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-08 09:00:32,915 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-08 09:00:32,915 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-08 09:00:32,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {15764#(<= 899 ~INFINITY~0)} assume true; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:32,916 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15764#(<= 899 ~INFINITY~0)} {15759#true} #123#return; {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:32,916 INFO L272 TraceCheckUtils]: 4: Hoare triple {15764#(<= 899 ~INFINITY~0)} call #t~ret22 := main(); {15764#(<= 899 ~INFINITY~0)} is VALID [2022-04-08 09:00:32,916 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-08 09:00:32,917 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-08 09:00:32,918 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-08 09:00:32,919 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-08 09:00:32,919 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-08 09:00:32,920 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-08 09:00:32,920 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-08 09:00:32,921 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-08 09:00:32,921 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-08 09:00:32,921 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-08 09:00:32,922 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-08 09:00:32,922 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-08 09:00:32,922 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-08 09:00:32,923 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-08 09:00:32,923 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-08 09:00:32,923 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-08 09:00:32,924 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-08 09:00:32,924 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-08 09:00:32,924 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-08 09:00:32,925 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-08 09:00:32,925 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-08 09:00:32,925 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-08 09:00:32,926 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-08 09:00:32,927 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-08 09:00:32,927 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-08 09:00:32,927 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-08 09:00:32,928 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-08 09:00:32,928 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-08 09:00:32,929 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-08 09:00:32,929 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-08 09:00:32,930 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-08 09:00:32,930 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:32,930 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-08 09:00:32,930 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-08 09:00:32,931 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-08 09:00:32,931 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 09:00:35,178 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-08 09:00:35,192 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-08 09:00:35,403 INFO L290 TraceCheckUtils]: 38: Hoare triple {15760#false} assume !false; {15760#false} is VALID [2022-04-08 09:00:35,404 INFO L290 TraceCheckUtils]: 37: Hoare triple {15897#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15760#false} is VALID [2022-04-08 09:00:35,404 INFO L290 TraceCheckUtils]: 36: Hoare triple {15893#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15897#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:00:35,405 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-08 09:00:35,405 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-08 09:00:35,406 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-08 09:00:35,407 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-08 09:00:35,407 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-08 09:00:35,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {15759#true} assume true; {15759#true} is VALID [2022-04-08 09:00:35,408 INFO L290 TraceCheckUtils]: 29: Hoare triple {15759#true} assume !(0 == ~cond); {15759#true} is VALID [2022-04-08 09:00:35,408 INFO L290 TraceCheckUtils]: 28: Hoare triple {15759#true} ~cond := #in~cond; {15759#true} is VALID [2022-04-08 09:00:35,408 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-08 09:00:35,408 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-08 09:00:35,409 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-08 09:00:35,409 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-08 09:00:35,410 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-08 09:00:35,410 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-08 09:00:35,411 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-08 09:00:35,411 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-08 09:00:35,412 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-08 09:00:35,412 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-08 09:00:35,413 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-08 09:00:35,413 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-08 09:00:35,414 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-08 09:00:35,414 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-08 09:00:35,415 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-08 09:00:35,415 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-08 09:00:35,416 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-08 09:00:35,417 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-08 09:00:35,417 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-08 09:00:35,418 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-08 09:00:35,420 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-08 09:00:35,420 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-08 09:00:35,421 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-08 09:00:35,421 INFO L272 TraceCheckUtils]: 4: Hoare triple {16003#(<= 0 ~INFINITY~0)} call #t~ret22 := main(); {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-08 09:00:35,422 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16003#(<= 0 ~INFINITY~0)} {15759#true} #123#return; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-08 09:00:35,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {16003#(<= 0 ~INFINITY~0)} assume true; {16003#(<= 0 ~INFINITY~0)} is VALID [2022-04-08 09:00:35,423 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-08 09:00:35,423 INFO L272 TraceCheckUtils]: 0: Hoare triple {15759#true} call ULTIMATE.init(); {15759#true} is VALID [2022-04-08 09:00:35,423 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-08 09:00:35,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [205644511] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 09:00:35,423 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 09:00:35,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 11] total 28 [2022-04-08 09:00:35,424 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 09:00:35,424 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1210947606] [2022-04-08 09:00:35,424 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1210947606] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:35,424 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:35,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 09:00:35,424 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [71901232] [2022-04-08 09:00:35,424 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 09:00:35,425 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-08 09:00:35,425 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 09:00:35,425 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-08 09:00:35,460 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-08 09:00:35,460 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 09:00:35,461 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:35,461 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 09:00:35,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=654, Unknown=2, NotChecked=0, Total=756 [2022-04-08 09:00:35,461 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-08 09:00:37,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:37,959 INFO L93 Difference]: Finished difference Result 232 states and 291 transitions. [2022-04-08 09:00:37,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 09:00:37,959 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-08 09:00:37,959 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:37,959 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-08 09:00:37,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 09:00:37,961 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-08 09:00:37,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 09:00:37,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-08 09:00:38,104 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-08 09:00:38,108 INFO L225 Difference]: With dead ends: 232 [2022-04-08 09:00:38,108 INFO L226 Difference]: Without dead ends: 230 [2022-04-08 09:00:38,109 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-08 09:00:38,110 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-08 09:00:38,110 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-08 09:00:38,111 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-08 09:00:39,025 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 170. [2022-04-08 09:00:39,026 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:39,026 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-08 09:00:39,026 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-08 09:00:39,027 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-08 09:00:39,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:39,031 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-08 09:00:39,031 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-08 09:00:39,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:39,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:39,032 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-08 09:00:39,032 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-08 09:00:39,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:39,036 INFO L93 Difference]: Finished difference Result 230 states and 289 transitions. [2022-04-08 09:00:39,036 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 289 transitions. [2022-04-08 09:00:39,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:39,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:39,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:39,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:39,037 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-08 09:00:39,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 211 transitions. [2022-04-08 09:00:39,040 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 211 transitions. Word has length 39 [2022-04-08 09:00:39,040 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:39,040 INFO L478 AbstractCegarLoop]: Abstraction has 170 states and 211 transitions. [2022-04-08 09:00:39,040 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-08 09:00:39,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 170 states and 211 transitions. [2022-04-08 09:00:39,456 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-08 09:00:39,456 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-08 09:00:39,457 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-08 09:00:39,457 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:39,457 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-08 09:00:39,473 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-08 09:00:39,657 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-08 09:00:39,658 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:39,658 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:39,658 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 7 times [2022-04-08 09:00:39,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:39,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1225994085] [2022-04-08 09:00:39,660 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:39,660 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:39,660 INFO L85 PathProgramCache]: Analyzing trace with hash 994866975, now seen corresponding path program 8 times [2022-04-08 09:00:39,660 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:39,660 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2000045916] [2022-04-08 09:00:39,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:39,661 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:39,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:39,749 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:39,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:39,753 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-08 09:00:39,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-08 09:00:39,754 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-08 09:00:39,754 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-08 09:00:39,754 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-08 09:00:39,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-08 09:00:39,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-08 09:00:39,755 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-08 09:00:39,755 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-08 09:00:39,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-08 09:00:39,755 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-08 09:00:39,755 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:39,755 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-08 09:00:39,755 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-08 09:00:39,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:39,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-08 09:00:39,756 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-08 09:00:39,756 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-08 09:00:39,756 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-08 09:00:39,757 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-08 09:00:39,757 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-08 09:00:39,757 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-08 09:00:39,758 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-08 09:00:39,759 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-08 09:00:39,759 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-08 09:00:39,759 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-08 09:00:39,760 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-08 09:00:39,760 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-08 09:00:39,760 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-08 09:00:39,761 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-08 09:00:39,761 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-08 09:00:39,762 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-08 09:00:39,762 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-08 09:00:39,762 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-08 09:00:39,763 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-08 09:00:39,763 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-08 09:00:39,764 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-08 09:00:39,764 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-08 09:00:39,764 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-08 09:00:39,764 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-08 09:00:39,764 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-08 09:00:39,764 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-08 09:00:39,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-08 09:00:39,764 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-08 09:00:39,764 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:39,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2000045916] [2022-04-08 09:00:39,765 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2000045916] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 09:00:39,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1967331639] [2022-04-08 09:00:39,765 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 09:00:39,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 09:00:39,765 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 09:00:39,766 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-08 09:00:39,795 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-08 09:00:39,893 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 09:00:39,893 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 09:00:39,895 INFO L263 TraceCheckSpWp]: Trace formula consists of 357 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 09:00:39,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:39,913 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 09:00:40,129 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-08 09:00:40,129 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-08 09:00:40,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-08 09:00:40,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-08 09:00:40,129 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-08 09:00:40,129 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-08 09:00:40,129 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-08 09:00:40,129 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-08 09:00:40,129 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:40,130 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-08 09:00:40,130 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-08 09:00:40,130 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:40,130 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-08 09:00:40,130 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-08 09:00:40,130 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-08 09:00:40,131 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-08 09:00:40,131 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-08 09:00:40,131 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-08 09:00:40,132 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-08 09:00:40,132 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-08 09:00:40,133 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-08 09:00:40,133 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-08 09:00:40,134 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-08 09:00:40,134 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-08 09:00:40,134 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-08 09:00:40,135 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-08 09:00:40,135 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-08 09:00:40,136 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-08 09:00:40,136 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-08 09:00:40,137 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-08 09:00:40,137 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-08 09:00:40,138 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-08 09:00:40,138 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-08 09:00:40,139 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-08 09:00:40,139 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-08 09:00:40,139 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-08 09:00:40,139 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-08 09:00:40,139 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-08 09:00:40,139 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-08 09:00:40,139 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-08 09:00:40,139 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-08 09:00:40,139 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 09:00:40,309 INFO L290 TraceCheckUtils]: 39: Hoare triple {17315#false} assume !false; {17315#false} is VALID [2022-04-08 09:00:40,309 INFO L290 TraceCheckUtils]: 38: Hoare triple {17315#false} assume 0 == ~cond; {17315#false} is VALID [2022-04-08 09:00:40,309 INFO L290 TraceCheckUtils]: 37: Hoare triple {17315#false} ~cond := #in~cond; {17315#false} is VALID [2022-04-08 09:00:40,309 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-08 09:00:40,310 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-08 09:00:40,310 INFO L290 TraceCheckUtils]: 34: Hoare triple {17315#false} ~i~0 := 0; {17315#false} is VALID [2022-04-08 09:00:40,310 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-08 09:00:40,310 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-08 09:00:40,311 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-08 09:00:40,311 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-08 09:00:40,311 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-08 09:00:40,312 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-08 09:00:40,312 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-08 09:00:40,312 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-08 09:00:40,313 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-08 09:00:40,313 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-08 09:00:40,313 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-08 09:00:40,314 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-08 09:00:40,314 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-08 09:00:40,314 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-08 09:00:40,315 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-08 09:00:40,315 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-08 09:00:40,315 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-08 09:00:40,316 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-08 09:00:40,316 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-08 09:00:40,316 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-08 09:00:40,317 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-08 09:00:40,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {17314#true} ~i~0 := 0; {17314#true} is VALID [2022-04-08 09:00:40,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {17314#true} assume !(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:40,317 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-08 09:00:40,317 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-08 09:00:40,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {17314#true} assume !!(~i~0 < ~nodecount~0); {17314#true} is VALID [2022-04-08 09:00:40,317 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-08 09:00:40,317 INFO L290 TraceCheckUtils]: 6: Hoare triple {17314#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {17314#true} is VALID [2022-04-08 09:00:40,318 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-08 09:00:40,318 INFO L272 TraceCheckUtils]: 4: Hoare triple {17314#true} call #t~ret22 := main(); {17314#true} is VALID [2022-04-08 09:00:40,318 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17314#true} {17314#true} #123#return; {17314#true} is VALID [2022-04-08 09:00:40,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {17314#true} assume true; {17314#true} is VALID [2022-04-08 09:00:40,318 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-08 09:00:40,318 INFO L272 TraceCheckUtils]: 0: Hoare triple {17314#true} call ULTIMATE.init(); {17314#true} is VALID [2022-04-08 09:00:40,318 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-08 09:00:40,318 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1967331639] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 09:00:40,319 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-08 09:00:40,319 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 15 [2022-04-08 09:00:40,319 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 09:00:40,319 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1225994085] [2022-04-08 09:00:40,319 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1225994085] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 09:00:40,319 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 09:00:40,319 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 09:00:40,319 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [690872717] [2022-04-08 09:00:40,319 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 09:00:40,320 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-08 09:00:40,320 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 09:00:40,320 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-08 09:00:40,356 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-08 09:00:40,356 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 09:00:40,356 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:40,357 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 09:00:40,357 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=157, Unknown=0, NotChecked=0, Total=210 [2022-04-08 09:00:40,357 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-08 09:00:43,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:43,247 INFO L93 Difference]: Finished difference Result 366 states and 463 transitions. [2022-04-08 09:00:43,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 09:00:43,247 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-08 09:00:43,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 09:00:43,247 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-08 09:00:43,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-08 09:00:43,250 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-08 09:00:43,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 136 transitions. [2022-04-08 09:00:43,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 136 transitions. [2022-04-08 09:00:43,384 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-08 09:00:43,391 INFO L225 Difference]: With dead ends: 366 [2022-04-08 09:00:43,391 INFO L226 Difference]: Without dead ends: 337 [2022-04-08 09:00:43,392 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-08 09:00:43,392 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-08 09:00:43,392 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-08 09:00:43,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states. [2022-04-08 09:00:44,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 227. [2022-04-08 09:00:44,657 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 09:00:44,657 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-08 09:00:44,658 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-08 09:00:44,658 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-08 09:00:44,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:44,671 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-08 09:00:44,671 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-08 09:00:44,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:44,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:44,673 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-08 09:00:44,673 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-08 09:00:44,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 09:00:44,681 INFO L93 Difference]: Finished difference Result 337 states and 431 transitions. [2022-04-08 09:00:44,681 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 431 transitions. [2022-04-08 09:00:44,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 09:00:44,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 09:00:44,682 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 09:00:44,682 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 09:00:44,682 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-08 09:00:44,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 227 states to 227 states and 290 transitions. [2022-04-08 09:00:44,687 INFO L78 Accepts]: Start accepts. Automaton has 227 states and 290 transitions. Word has length 40 [2022-04-08 09:00:44,687 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 09:00:44,687 INFO L478 AbstractCegarLoop]: Abstraction has 227 states and 290 transitions. [2022-04-08 09:00:44,687 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-08 09:00:44,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 227 states and 290 transitions. [2022-04-08 09:00:45,465 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-08 09:00:45,465 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 290 transitions. [2022-04-08 09:00:45,466 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-08 09:00:45,466 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 09:00:45,466 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-08 09:00:45,493 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 09:00:45,683 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-08 09:00:45,683 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 09:00:45,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 09:00:45,684 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 3 times [2022-04-08 09:00:45,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 09:00:45,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1859610382] [2022-04-08 09:00:45,687 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Qvasr do not support arrays. [2022-04-08 09:00:45,687 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 09:00:45,687 INFO L85 PathProgramCache]: Analyzing trace with hash -1497733084, now seen corresponding path program 4 times [2022-04-08 09:00:45,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 09:00:45,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1288065929] [2022-04-08 09:00:45,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 09:00:45,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 09:00:45,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:46,312 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 09:00:46,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:46,316 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-08 09:00:46,316 INFO L290 TraceCheckUtils]: 1: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-08 09:00:46,316 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-08 09:00:46,317 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-08 09:00:46,317 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-08 09:00:46,317 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-08 09:00:46,317 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-08 09:00:46,317 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-08 09:00:46,317 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-08 09:00:46,317 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-08 09:00:46,320 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-08 09:00:46,320 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-08 09:00:46,321 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-08 09:00:46,321 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-08 09:00:46,322 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-08 09:00:46,322 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-08 09:00:46,323 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-08 09:00:46,323 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-08 09:00:46,324 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-08 09:00:46,324 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-08 09:00:46,325 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-08 09:00:46,325 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-08 09:00:46,326 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-08 09:00:46,326 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-08 09:00:46,327 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-08 09:00:46,328 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-08 09:00:46,328 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-08 09:00:46,329 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-08 09:00:46,330 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-08 09:00:46,330 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-08 09:00:46,331 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-08 09:00:46,331 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-08 09:00:46,331 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-08 09:00:46,332 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-08 09:00:46,332 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-08 09:00:46,333 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-08 09:00:46,333 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-08 09:00:46,334 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-08 09:00:46,334 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-08 09:00:46,334 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-08 09:00:46,335 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-08 09:00:46,335 INFO L290 TraceCheckUtils]: 38: Hoare triple {19473#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {19456#false} is VALID [2022-04-08 09:00:46,335 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-08 09:00:46,336 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-08 09:00:46,336 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 09:00:46,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1288065929] [2022-04-08 09:00:46,336 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1288065929] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 09:00:46,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [920290969] [2022-04-08 09:00:46,336 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 09:00:46,336 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 09:00:46,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 09:00:46,337 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-08 09:00:46,337 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-08 09:00:46,440 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 09:00:46,440 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 09:00:46,442 INFO L263 TraceCheckSpWp]: Trace formula consists of 339 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-08 09:00:46,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 09:00:46,467 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 09:00:46,509 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-08 09:00:46,602 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-08 09:00:46,744 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-04-08 09:00:46,745 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-08 09:00:47,454 INFO L356 Elim1Store]: treesize reduction 22, result has 50.0 percent of original size [2022-04-08 09:00:47,454 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-08 09:00:48,794 INFO L356 Elim1Store]: treesize reduction 122, result has 40.5 percent of original size [2022-04-08 09:00:48,794 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-08 09:01:00,530 INFO L356 Elim1Store]: treesize reduction 23, result has 56.6 percent of original size [2022-04-08 09:01:00,530 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-08 09:01:00,909 INFO L272 TraceCheckUtils]: 0: Hoare triple {19455#true} call ULTIMATE.init(); {19455#true} is VALID [2022-04-08 09:01:00,909 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-08 09:01:00,909 INFO L290 TraceCheckUtils]: 2: Hoare triple {19455#true} assume true; {19455#true} is VALID [2022-04-08 09:01:00,910 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19455#true} {19455#true} #123#return; {19455#true} is VALID [2022-04-08 09:01:00,910 INFO L272 TraceCheckUtils]: 4: Hoare triple {19455#true} call #t~ret22 := main(); {19455#true} is VALID [2022-04-08 09:01:00,910 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-08 09:01:00,910 INFO L290 TraceCheckUtils]: 6: Hoare triple {19455#true} assume !!(0 <= ~nodecount~0 && ~nodecount~0 <= 4); {19455#true} is VALID [2022-04-08 09:01:00,912 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-08 09:01:00,913 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-08 09:01:00,913 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-08 09:01:00,914 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-08 09:01:00,914 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-08 09:01:00,915 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-08 09:01:00,916 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-08 09:01:00,917 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-08 09:01:00,917 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-08 09:01:00,918 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-08 09:01:00,919 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-08 09:01:00,920 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-08 09:01:00,922 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-08 09:01:00,923 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-08 09:01:00,924 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-08 09:01:00,925 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-08 09:01:00,927 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-08 09:01:00,931 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-08 09:01:00,933 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-08 09:01:00,935 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-08 09:01:00,937 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-08 09:01:00,939 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-08 09:01:00,941 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-08 09:01:00,952 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-08 09:01:00,954 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-08 09:01:00,955 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-08 09:01:00,956 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-08 09:01:00,956 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-08 09:01:00,957 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-08 09:01:00,958 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-08 09:01:00,958 INFO L290 TraceCheckUtils]: 37: Hoare triple {19607#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19611#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 09:01:00,958 INFO L290 TraceCheckUtils]: 38: Hoare triple {19611#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19456#false} is VALID [2022-04-08 09:01:00,958 INFO L290 TraceCheckUtils]: 39: Hoare triple {19456#false} assume !false; {19456#false} is VALID [2022-04-08 09:01:00,959 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-08 09:01:00,959 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 09:02:04,730 WARN L232 SmtUtils]: Spent 7.16s 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-08 09:02:04,732 INFO L356 Elim1Store]: treesize reduction 20, result has 59.2 percent of original size [2022-04-08 09:02:04,776 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