/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:51:17,620 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:51:17,621 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:51:17,643 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:51:17,643 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:51:17,644 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:51:17,645 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:51:17,646 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:51:17,648 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:51:17,648 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:51:17,649 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:51:17,650 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:51:17,650 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:51:17,651 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:51:17,652 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:51:17,653 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:51:17,653 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:51:17,654 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:51:17,655 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:51:17,656 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:51:17,657 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:51:17,658 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:51:17,659 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:51:17,659 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:51:17,660 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:51:17,662 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:51:17,662 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:51:17,662 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:51:17,663 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:51:17,663 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:51:17,664 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:51:17,664 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:51:17,665 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:51:17,665 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:51:17,666 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:51:17,666 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:51:17,667 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:51:17,667 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:51:17,667 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:51:17,668 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:51:17,668 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:51:17,669 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:51:17,669 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:51:17,681 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:51:17,681 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:51:17,682 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:51:17,682 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:51:17,683 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:51:17,684 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:51:17,684 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:51:17,684 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:51:17,684 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:51:17,684 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:51:17,684 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:51:17,685 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:51:17,685 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:51:17,685 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:17,685 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:51:17,685 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:51:17,686 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:51:17,686 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:51:17,686 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:51:17,686 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:51:17,686 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 05:51:17,851 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:51:17,868 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:51:17,870 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:51:17,870 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:51:17,875 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:51:17,876 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-28 05:51:17,930 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9457c7bb5/9516baf3a69f4de9b633b0377e1801ff/FLAG8a55572b2 [2022-04-28 05:51:18,305 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:51:18,306 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-28 05:51:18,311 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9457c7bb5/9516baf3a69f4de9b633b0377e1801ff/FLAG8a55572b2 [2022-04-28 05:51:18,323 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9457c7bb5/9516baf3a69f4de9b633b0377e1801ff [2022-04-28 05:51:18,324 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:51:18,325 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:51:18,331 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:18,331 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:51:18,334 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:51:18,335 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,335 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@36041fb9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18, skipping insertion in model container [2022-04-28 05:51:18,336 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,342 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:51:18,358 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:51:18,534 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c[490,503] [2022-04-28 05:51:18,566 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:18,573 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:51:18,582 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c[490,503] [2022-04-28 05:51:18,596 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:18,606 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:51:18,606 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18 WrapperNode [2022-04-28 05:51:18,606 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:18,607 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:51:18,607 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:51:18,607 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:51:18,615 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,615 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,620 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,620 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,626 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,631 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,632 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,634 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:51:18,634 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:51:18,635 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:51:18,635 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:51:18,635 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (1/1) ... [2022-04-28 05:51:18,642 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:18,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:18,661 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 05:51:18,663 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:51:18,687 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:51:18,688 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:51:18,689 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:51:18,739 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:51:18,740 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:51:18,895 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:51:18,901 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:51:18,901 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:51:18,903 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:18 BoogieIcfgContainer [2022-04-28 05:51:18,903 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:51:18,904 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:51:18,904 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:51:18,907 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:51:18,907 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:51:18" (1/3) ... [2022-04-28 05:51:18,908 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f2888d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:18, skipping insertion in model container [2022-04-28 05:51:18,908 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:18" (2/3) ... [2022-04-28 05:51:18,908 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f2888d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:18, skipping insertion in model container [2022-04-28 05:51:18,908 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:18" (3/3) ... [2022-04-28 05:51:18,909 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound50.c [2022-04-28 05:51:18,920 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:51:18,920 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:51:18,954 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:51:18,959 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@72ceb009, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@713576cc [2022-04-28 05:51:18,959 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:51:18,966 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:18,973 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 05:51:18,973 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:18,974 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:18,974 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:18,979 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:18,979 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-28 05:51:18,985 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:18,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1457748434] [2022-04-28 05:51:18,995 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:18,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 2 times [2022-04-28 05:51:18,998 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:18,999 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1101154105] [2022-04-28 05:51:18,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:19,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:19,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:19,243 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:51:19,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:19,264 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:51:19,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:19,265 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:51:19,266 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:51:19,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:19,278 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:19,279 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:19,279 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:19,279 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:19,280 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 05:51:19,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:19,291 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:19,291 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:19,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:19,292 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:19,295 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:51:19,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:51:19,295 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:19,295 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:51:19,296 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-28 05:51:19,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#true} is VALID [2022-04-28 05:51:19,296 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:19,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:19,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:19,298 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:19,298 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:19,299 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:19,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:19,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:19,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:19,300 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:19,300 INFO L290 TraceCheckUtils]: 16: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-28 05:51:19,301 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 05:51:19,301 INFO L272 TraceCheckUtils]: 18: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:51:19,302 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:51:19,302 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:51:19,302 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:51:19,303 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:19,303 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:19,304 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1101154105] [2022-04-28 05:51:19,305 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1101154105] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:19,305 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:19,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:19,309 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:19,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1457748434] [2022-04-28 05:51:19,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1457748434] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:19,312 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:19,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:19,312 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1345047943] [2022-04-28 05:51:19,313 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:19,318 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:51:19,319 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:19,322 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:19,359 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:19,360 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:51:19,360 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:19,389 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:51:19,390 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:19,394 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:19,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:19,634 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-28 05:51:19,634 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:51:19,635 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:51:19,635 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:19,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:19,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:51:19,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:19,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:51:19,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-28 05:51:19,775 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:19,787 INFO L225 Difference]: With dead ends: 74 [2022-04-28 05:51:19,787 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 05:51:19,791 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:19,794 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:19,796 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:19,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 05:51:19,834 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-28 05:51:19,834 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:19,836 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:19,839 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:19,840 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:19,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:19,853 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:51:19,853 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:51:19,854 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:19,854 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:19,856 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:51:19,857 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:51:19,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:19,867 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:51:19,867 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:51:19,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:19,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:19,868 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:19,868 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:19,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:19,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-28 05:51:19,877 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-28 05:51:19,878 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:19,878 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-28 05:51:19,878 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:19,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 45 transitions. [2022-04-28 05:51:19,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:19,925 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-28 05:51:19,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 05:51:19,926 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:19,926 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:19,926 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:51:19,926 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:19,927 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:19,928 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-28 05:51:19,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:19,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1608663825] [2022-04-28 05:51:19,929 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:19,929 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 2 times [2022-04-28 05:51:19,929 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:19,931 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [325554046] [2022-04-28 05:51:19,931 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:19,931 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:19,965 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:19,966 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [912708077] [2022-04-28 05:51:19,966 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:19,966 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:19,966 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:19,975 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:19,996 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 05:51:20,077 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:51:20,077 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:20,079 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:51:20,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:20,099 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:20,305 INFO L272 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2022-04-28 05:51:20,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {349#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,307 INFO L290 TraceCheckUtils]: 2: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {357#(<= ~counter~0 0)} {349#true} #108#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {357#(<= ~counter~0 0)} call #t~ret9 := main(); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {357#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,309 INFO L272 TraceCheckUtils]: 6: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,311 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #94#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,313 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,314 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,314 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,316 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #96#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {357#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:20,322 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {406#(<= |main_#t~post6| 0)} is VALID [2022-04-28 05:51:20,323 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {350#false} is VALID [2022-04-28 05:51:20,323 INFO L272 TraceCheckUtils]: 19: Hoare triple {350#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {350#false} is VALID [2022-04-28 05:51:20,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2022-04-28 05:51:20,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2022-04-28 05:51:20,325 INFO L290 TraceCheckUtils]: 22: Hoare triple {350#false} assume !false; {350#false} is VALID [2022-04-28 05:51:20,325 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:20,325 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:20,326 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:20,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [325554046] [2022-04-28 05:51:20,326 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:20,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [912708077] [2022-04-28 05:51:20,326 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [912708077] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:20,326 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:20,326 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:51:20,327 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:20,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1608663825] [2022-04-28 05:51:20,328 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1608663825] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:20,328 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:20,328 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:51:20,328 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1032808321] [2022-04-28 05:51:20,328 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:20,329 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:51:20,329 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:20,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:20,346 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:20,346 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 05:51:20,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:20,347 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 05:51:20,348 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:51:20,348 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:20,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:20,460 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-28 05:51:20,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 05:51:20,460 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:51:20,461 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:20,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:20,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:51:20,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:20,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:51:20,464 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-28 05:51:20,521 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:20,522 INFO L225 Difference]: With dead ends: 44 [2022-04-28 05:51:20,522 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 05:51:20,523 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:51:20,524 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:20,524 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:20,525 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 05:51:20,538 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-28 05:51:20,538 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:20,538 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:20,539 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:20,539 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:20,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:20,541 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:51:20,541 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:51:20,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:20,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:20,542 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:51:20,542 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:51:20,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:20,544 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:51:20,545 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:51:20,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:20,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:20,545 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:20,545 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:20,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:51:20,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-28 05:51:20,548 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-28 05:51:20,548 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:20,548 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-28 05:51:20,548 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:20,548 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 47 transitions. [2022-04-28 05:51:20,591 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:20,591 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:51:20,591 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 05:51:20,592 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:20,592 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:20,614 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 05:51:20,814 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:20,814 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:20,815 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:20,815 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-28 05:51:20,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:20,815 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [428456290] [2022-04-28 05:51:20,815 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:20,816 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 2 times [2022-04-28 05:51:20,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:20,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [79823768] [2022-04-28 05:51:20,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:20,816 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:20,841 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:20,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1432117166] [2022-04-28 05:51:20,842 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:20,842 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:20,842 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:20,843 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:20,844 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 05:51:20,888 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:51:20,888 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:20,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:51:20,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:20,915 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:21,105 INFO L272 TraceCheckUtils]: 0: Hoare triple {657#true} call ULTIMATE.init(); {657#true} is VALID [2022-04-28 05:51:21,105 INFO L290 TraceCheckUtils]: 1: Hoare triple {657#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {657#true} is VALID [2022-04-28 05:51:21,105 INFO L290 TraceCheckUtils]: 2: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:51:21,105 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {657#true} {657#true} #108#return; {657#true} is VALID [2022-04-28 05:51:21,106 INFO L272 TraceCheckUtils]: 4: Hoare triple {657#true} call #t~ret9 := main(); {657#true} is VALID [2022-04-28 05:51:21,106 INFO L290 TraceCheckUtils]: 5: Hoare triple {657#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {657#true} is VALID [2022-04-28 05:51:21,106 INFO L272 TraceCheckUtils]: 6: Hoare triple {657#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:51:21,106 INFO L290 TraceCheckUtils]: 7: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:51:21,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:51:21,106 INFO L290 TraceCheckUtils]: 9: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:51:21,107 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {657#true} {657#true} #94#return; {657#true} is VALID [2022-04-28 05:51:21,107 INFO L272 TraceCheckUtils]: 11: Hoare triple {657#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:51:21,107 INFO L290 TraceCheckUtils]: 12: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:51:21,107 INFO L290 TraceCheckUtils]: 13: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:51:21,107 INFO L290 TraceCheckUtils]: 14: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:51:21,107 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {657#true} {657#true} #96#return; {657#true} is VALID [2022-04-28 05:51:21,108 INFO L290 TraceCheckUtils]: 16: Hoare triple {657#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:21,108 INFO L290 TraceCheckUtils]: 17: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:21,109 INFO L290 TraceCheckUtils]: 18: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:21,110 INFO L290 TraceCheckUtils]: 19: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:21,111 INFO L272 TraceCheckUtils]: 20: Hoare triple {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:21,111 INFO L290 TraceCheckUtils]: 21: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:21,112 INFO L290 TraceCheckUtils]: 22: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {658#false} is VALID [2022-04-28 05:51:21,112 INFO L290 TraceCheckUtils]: 23: Hoare triple {658#false} assume !false; {658#false} is VALID [2022-04-28 05:51:21,112 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:21,112 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:21,112 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:21,112 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [79823768] [2022-04-28 05:51:21,113 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:21,113 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1432117166] [2022-04-28 05:51:21,113 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1432117166] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:21,113 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:21,113 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:21,113 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:21,113 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [428456290] [2022-04-28 05:51:21,113 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [428456290] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:21,113 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:21,114 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:21,114 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077587638] [2022-04-28 05:51:21,114 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:21,114 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:51:21,114 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:21,115 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:21,132 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:21,132 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:51:21,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:21,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:51:21,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:21,133 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:21,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:21,452 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-28 05:51:21,452 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:21,453 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:51:21,453 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:21,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:21,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:51:21,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:21,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:51:21,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-28 05:51:21,538 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:21,542 INFO L225 Difference]: With dead ends: 57 [2022-04-28 05:51:21,542 INFO L226 Difference]: Without dead ends: 54 [2022-04-28 05:51:21,543 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:51:21,545 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 18 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:21,546 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 169 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:21,546 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-28 05:51:21,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-28 05:51:21,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:21,565 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:21,565 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:21,566 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:21,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:21,569 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:51:21,569 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:51:21,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:21,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:21,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:51:21,570 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:51:21,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:21,573 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:51:21,573 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:51:21,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:21,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:21,574 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:21,574 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:21,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:21,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 70 transitions. [2022-04-28 05:51:21,577 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 70 transitions. Word has length 24 [2022-04-28 05:51:21,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:21,577 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 70 transitions. [2022-04-28 05:51:21,578 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:21,578 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 70 transitions. [2022-04-28 05:51:21,671 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:21,672 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 05:51:21,673 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 05:51:21,673 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:21,673 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:21,689 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-28 05:51:21,875 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 05:51:21,875 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:21,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:21,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-28 05:51:21,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:21,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1140825556] [2022-04-28 05:51:21,876 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:21,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 2 times [2022-04-28 05:51:21,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:21,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1518786434] [2022-04-28 05:51:21,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:21,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:21,898 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:21,898 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1557664542] [2022-04-28 05:51:21,899 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:21,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:21,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:21,900 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:21,908 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 05:51:21,955 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:21,955 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:21,956 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:21,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:21,966 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:22,119 INFO L272 TraceCheckUtils]: 0: Hoare triple {1066#true} call ULTIMATE.init(); {1066#true} is VALID [2022-04-28 05:51:22,120 INFO L290 TraceCheckUtils]: 1: Hoare triple {1066#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,120 INFO L290 TraceCheckUtils]: 2: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,121 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1074#(<= ~counter~0 0)} {1066#true} #108#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,121 INFO L272 TraceCheckUtils]: 4: Hoare triple {1074#(<= ~counter~0 0)} call #t~ret9 := main(); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,121 INFO L290 TraceCheckUtils]: 5: Hoare triple {1074#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,123 INFO L272 TraceCheckUtils]: 6: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,126 INFO L290 TraceCheckUtils]: 9: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,127 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #94#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,127 INFO L272 TraceCheckUtils]: 11: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,128 INFO L290 TraceCheckUtils]: 12: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,128 INFO L290 TraceCheckUtils]: 13: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,128 INFO L290 TraceCheckUtils]: 14: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,129 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #96#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,129 INFO L290 TraceCheckUtils]: 16: Hoare triple {1074#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,130 INFO L290 TraceCheckUtils]: 17: Hoare triple {1074#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,130 INFO L290 TraceCheckUtils]: 18: Hoare triple {1123#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,130 INFO L290 TraceCheckUtils]: 19: Hoare triple {1123#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,131 INFO L290 TraceCheckUtils]: 20: Hoare triple {1123#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1133#(<= |main_#t~post7| 1)} is VALID [2022-04-28 05:51:22,131 INFO L290 TraceCheckUtils]: 21: Hoare triple {1133#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {1067#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {1067#false} assume !(#t~post6 < 50);havoc #t~post6; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L272 TraceCheckUtils]: 25: Hoare triple {1067#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#false} ~cond := #in~cond; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 27: Hoare triple {1067#false} assume 0 == ~cond; {1067#false} is VALID [2022-04-28 05:51:22,132 INFO L290 TraceCheckUtils]: 28: Hoare triple {1067#false} assume !false; {1067#false} is VALID [2022-04-28 05:51:22,133 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:22,133 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:22,133 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:22,133 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1518786434] [2022-04-28 05:51:22,133 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:22,133 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1557664542] [2022-04-28 05:51:22,133 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1557664542] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:22,134 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:22,134 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:22,134 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:22,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1140825556] [2022-04-28 05:51:22,134 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1140825556] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:22,134 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:22,134 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:22,134 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1104142811] [2022-04-28 05:51:22,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:22,135 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:51:22,135 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:22,135 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:22,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:22,153 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:22,153 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:22,153 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:22,153 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:22,154 INFO L87 Difference]: Start difference. First operand 53 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:22,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:22,289 INFO L93 Difference]: Finished difference Result 77 states and 104 transitions. [2022-04-28 05:51:22,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:22,289 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:51:22,289 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:22,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:22,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:51:22,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:22,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:51:22,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-28 05:51:22,361 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:22,363 INFO L225 Difference]: With dead ends: 77 [2022-04-28 05:51:22,363 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 05:51:22,363 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:22,365 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:22,366 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:22,367 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 05:51:22,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-28 05:51:22,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:22,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:22,395 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:22,395 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:22,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:22,400 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:51:22,400 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:51:22,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:22,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:22,402 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:51:22,403 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:51:22,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:22,407 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:51:22,407 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:51:22,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:22,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:22,410 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:22,410 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:22,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:22,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-28 05:51:22,415 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-28 05:51:22,416 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:22,416 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-28 05:51:22,416 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:22,416 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 72 transitions. [2022-04-28 05:51:22,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:22,484 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:51:22,484 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-28 05:51:22,484 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:22,484 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-28 05:51:22,501 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:22,687 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:22,687 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:22,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:22,688 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-28 05:51:22,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:22,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [672320358] [2022-04-28 05:51:22,689 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:22,689 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 2 times [2022-04-28 05:51:22,689 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:22,689 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1849955981] [2022-04-28 05:51:22,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:22,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:22,709 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:22,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1780659543] [2022-04-28 05:51:22,710 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:22,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:22,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:22,712 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:22,734 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 05:51:22,760 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:22,760 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:22,761 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:51:22,779 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:22,780 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:22,946 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:51:22,947 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,947 INFO L290 TraceCheckUtils]: 2: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1539#(<= ~counter~0 0)} {1531#true} #108#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,949 INFO L272 TraceCheckUtils]: 4: Hoare triple {1539#(<= ~counter~0 0)} call #t~ret9 := main(); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,950 INFO L290 TraceCheckUtils]: 5: Hoare triple {1539#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,951 INFO L272 TraceCheckUtils]: 6: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,951 INFO L290 TraceCheckUtils]: 7: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,953 INFO L290 TraceCheckUtils]: 9: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,965 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #94#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,968 INFO L272 TraceCheckUtils]: 11: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,971 INFO L290 TraceCheckUtils]: 12: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,971 INFO L290 TraceCheckUtils]: 13: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,971 INFO L290 TraceCheckUtils]: 14: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,972 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #96#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {1539#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:22,973 INFO L290 TraceCheckUtils]: 17: Hoare triple {1539#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {1588#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,974 INFO L290 TraceCheckUtils]: 19: Hoare triple {1588#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:22,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {1588#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:22,975 INFO L290 TraceCheckUtils]: 21: Hoare triple {1598#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:22,975 INFO L290 TraceCheckUtils]: 22: Hoare triple {1598#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:22,975 INFO L290 TraceCheckUtils]: 23: Hoare triple {1598#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:22,976 INFO L290 TraceCheckUtils]: 24: Hoare triple {1598#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1611#(<= |main_#t~post6| 2)} is VALID [2022-04-28 05:51:22,976 INFO L290 TraceCheckUtils]: 25: Hoare triple {1611#(<= |main_#t~post6| 2)} assume !(#t~post6 < 50);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:51:22,976 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1532#false} is VALID [2022-04-28 05:51:22,976 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:51:22,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:51:22,977 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:51:22,977 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:22,977 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:23,162 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:51:23,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:51:23,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:51:23,163 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1532#false} is VALID [2022-04-28 05:51:23,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {1639#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:51:23,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {1643#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1639#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:51:23,164 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1643#(< ~counter~0 50)} is VALID [2022-04-28 05:51:23,165 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {1643#(< ~counter~0 50)} is VALID [2022-04-28 05:51:23,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {1643#(< ~counter~0 50)} is VALID [2022-04-28 05:51:23,166 INFO L290 TraceCheckUtils]: 20: Hoare triple {1656#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1643#(< ~counter~0 50)} is VALID [2022-04-28 05:51:23,166 INFO L290 TraceCheckUtils]: 19: Hoare triple {1656#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1656#(< ~counter~0 49)} is VALID [2022-04-28 05:51:23,166 INFO L290 TraceCheckUtils]: 18: Hoare triple {1656#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {1656#(< ~counter~0 49)} is VALID [2022-04-28 05:51:23,167 INFO L290 TraceCheckUtils]: 17: Hoare triple {1666#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(< ~counter~0 49)} is VALID [2022-04-28 05:51:23,167 INFO L290 TraceCheckUtils]: 16: Hoare triple {1666#(< ~counter~0 48)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,168 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1531#true} {1666#(< ~counter~0 48)} #96#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:51:23,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:51:23,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:51:23,168 INFO L272 TraceCheckUtils]: 11: Hoare triple {1666#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:51:23,169 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1531#true} {1666#(< ~counter~0 48)} #94#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:51:23,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:51:23,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:51:23,169 INFO L272 TraceCheckUtils]: 6: Hoare triple {1666#(< ~counter~0 48)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:51:23,170 INFO L290 TraceCheckUtils]: 5: Hoare triple {1666#(< ~counter~0 48)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {1666#(< ~counter~0 48)} call #t~ret9 := main(); {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,170 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1666#(< ~counter~0 48)} {1531#true} #108#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {1666#(< ~counter~0 48)} assume true; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1666#(< ~counter~0 48)} is VALID [2022-04-28 05:51:23,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:51:23,172 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:23,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:23,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1849955981] [2022-04-28 05:51:23,172 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:23,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1780659543] [2022-04-28 05:51:23,172 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1780659543] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:23,172 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:23,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 05:51:23,173 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:23,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [672320358] [2022-04-28 05:51:23,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [672320358] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:23,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:23,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:23,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [563331008] [2022-04-28 05:51:23,173 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:23,174 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:51:23,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:23,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:23,193 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:23,193 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:51:23,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:23,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:51:23,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:51:23,194 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:23,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:23,360 INFO L93 Difference]: Finished difference Result 67 states and 85 transitions. [2022-04-28 05:51:23,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 05:51:23,360 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:51:23,361 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:23,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:23,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:51:23,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:23,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:51:23,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 63 transitions. [2022-04-28 05:51:23,415 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:23,418 INFO L225 Difference]: With dead ends: 67 [2022-04-28 05:51:23,418 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:51:23,429 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:23,430 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:23,430 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 165 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:23,431 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:51:23,451 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 05:51:23,452 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:23,452 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:23,452 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:23,453 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:23,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:23,455 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:51:23,455 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:51:23,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:23,455 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:23,456 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:51:23,456 INFO L87 Difference]: Start difference. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:51:23,458 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:23,458 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:51:23,458 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:51:23,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:23,459 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:23,459 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:23,459 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:23,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:23,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 77 transitions. [2022-04-28 05:51:23,461 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 77 transitions. Word has length 30 [2022-04-28 05:51:23,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:23,461 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 77 transitions. [2022-04-28 05:51:23,462 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:23,462 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 77 transitions. [2022-04-28 05:51:23,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:23,524 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 05:51:23,524 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 05:51:23,524 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:23,524 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:23,541 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-28 05:51:23,727 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:23,727 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:23,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:23,728 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-28 05:51:23,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:23,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1141535598] [2022-04-28 05:51:23,728 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:23,728 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 2 times [2022-04-28 05:51:23,729 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:23,729 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [347295209] [2022-04-28 05:51:23,729 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:23,729 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:23,762 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:23,762 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1007986530] [2022-04-28 05:51:23,762 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:23,762 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:23,762 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:23,763 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:23,765 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 05:51:23,813 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:23,814 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:23,814 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:51:23,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:23,828 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:23,969 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:51:23,969 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:51:23,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:51:23,970 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:51:23,970 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:51:23,970 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:51:23,970 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:51:23,971 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:23,971 INFO L290 TraceCheckUtils]: 8: Hoare triple {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:23,972 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:23,972 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:23,972 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:51:23,972 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:51:23,973 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:51:23,973 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:51:23,973 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:23,974 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:23,974 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:23,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:23,975 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:23,975 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:23,975 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:23,976 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:23,976 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:23,976 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:23,977 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:23,977 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:51:23,977 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2095#false} is VALID [2022-04-28 05:51:23,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:51:23,977 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:51:23,978 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:51:23,978 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:51:23,978 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:24,214 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:51:24,214 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:51:24,215 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:51:24,215 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2095#false} is VALID [2022-04-28 05:51:24,215 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:51:24,215 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:24,216 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:24,216 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:24,217 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:24,217 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:24,217 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:24,218 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:24,218 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:24,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:24,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:24,219 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:24,219 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:51:24,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:51:24,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:51:24,220 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:51:24,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:24,221 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:24,221 INFO L290 TraceCheckUtils]: 8: Hoare triple {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:24,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:51:24,221 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:51:24,222 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:51:24,223 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:24,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [347295209] [2022-04-28 05:51:24,223 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:24,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1007986530] [2022-04-28 05:51:24,223 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1007986530] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:24,223 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:24,223 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:51:24,223 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:24,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1141535598] [2022-04-28 05:51:24,224 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1141535598] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:24,224 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:24,224 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:24,224 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1533468785] [2022-04-28 05:51:24,224 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:24,224 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:51:24,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:24,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:24,245 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:24,245 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:24,245 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:24,246 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:24,246 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:51:24,246 INFO L87 Difference]: Start difference. First operand 59 states and 77 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:25,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:25,083 INFO L93 Difference]: Finished difference Result 138 states and 201 transitions. [2022-04-28 05:51:25,083 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:51:25,084 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:51:25,084 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:25,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:25,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:51:25,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:25,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:51:25,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-28 05:51:25,214 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:25,217 INFO L225 Difference]: With dead ends: 138 [2022-04-28 05:51:25,217 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 05:51:25,218 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:25,218 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 115 mSDsluCounter, 234 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 217 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:25,219 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [119 Valid, 298 Invalid, 217 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:51:25,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 05:51:25,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 88. [2022-04-28 05:51:25,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:25,333 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:25,333 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:25,333 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:25,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:25,339 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:51:25,339 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:51:25,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:25,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:25,341 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:51:25,341 INFO L87 Difference]: Start difference. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:51:25,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:25,347 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:51:25,347 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:51:25,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:25,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:25,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:25,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:25,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:25,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 122 transitions. [2022-04-28 05:51:25,352 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 122 transitions. Word has length 31 [2022-04-28 05:51:25,352 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:25,352 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 122 transitions. [2022-04-28 05:51:25,352 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:25,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 122 transitions. [2022-04-28 05:51:25,488 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:25,488 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 122 transitions. [2022-04-28 05:51:25,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 05:51:25,489 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:25,489 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:25,514 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:25,714 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:25,714 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:25,714 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:25,714 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 1 times [2022-04-28 05:51:25,714 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:25,715 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [866143570] [2022-04-28 05:51:25,715 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:25,715 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 2 times [2022-04-28 05:51:25,715 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:25,715 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127385277] [2022-04-28 05:51:25,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:25,715 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:25,732 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:25,732 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [746852980] [2022-04-28 05:51:25,732 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:25,732 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:25,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:25,733 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:25,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 05:51:25,790 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:25,790 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:25,791 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:51:25,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:25,803 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:25,999 INFO L272 TraceCheckUtils]: 0: Hoare triple {3016#true} call ULTIMATE.init(); {3016#true} is VALID [2022-04-28 05:51:26,000 INFO L290 TraceCheckUtils]: 1: Hoare triple {3016#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3024#(<= ~counter~0 0)} {3016#true} #108#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {3024#(<= ~counter~0 0)} call #t~ret9 := main(); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {3024#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,003 INFO L290 TraceCheckUtils]: 8: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,003 INFO L290 TraceCheckUtils]: 9: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,003 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #94#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,004 INFO L272 TraceCheckUtils]: 11: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,010 INFO L290 TraceCheckUtils]: 12: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,011 INFO L290 TraceCheckUtils]: 14: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,012 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #96#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,012 INFO L290 TraceCheckUtils]: 16: Hoare triple {3024#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:26,013 INFO L290 TraceCheckUtils]: 17: Hoare triple {3024#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:26,013 INFO L290 TraceCheckUtils]: 18: Hoare triple {3073#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:26,014 INFO L290 TraceCheckUtils]: 19: Hoare triple {3073#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:26,014 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:26,014 INFO L290 TraceCheckUtils]: 21: Hoare triple {3083#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:26,015 INFO L290 TraceCheckUtils]: 22: Hoare triple {3083#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:26,019 INFO L290 TraceCheckUtils]: 23: Hoare triple {3083#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3093#(<= |main_#t~post8| 2)} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 24: Hoare triple {3093#(<= |main_#t~post8| 2)} assume !(#t~post8 < 50);havoc #t~post8; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 25: Hoare triple {3017#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 26: Hoare triple {3017#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 27: Hoare triple {3017#false} assume !(#t~post7 < 50);havoc #t~post7; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 28: Hoare triple {3017#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 29: Hoare triple {3017#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {3017#false} assume !(#t~post6 < 50);havoc #t~post6; {3017#false} is VALID [2022-04-28 05:51:26,023 INFO L272 TraceCheckUtils]: 31: Hoare triple {3017#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3017#false} is VALID [2022-04-28 05:51:26,024 INFO L290 TraceCheckUtils]: 32: Hoare triple {3017#false} ~cond := #in~cond; {3017#false} is VALID [2022-04-28 05:51:26,024 INFO L290 TraceCheckUtils]: 33: Hoare triple {3017#false} assume 0 == ~cond; {3017#false} is VALID [2022-04-28 05:51:26,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {3017#false} assume !false; {3017#false} is VALID [2022-04-28 05:51:26,024 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:26,024 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:26,024 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:26,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2127385277] [2022-04-28 05:51:26,024 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:26,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [746852980] [2022-04-28 05:51:26,024 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [746852980] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:26,024 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:26,024 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:26,025 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:26,025 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [866143570] [2022-04-28 05:51:26,025 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [866143570] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:26,025 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:26,025 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:26,025 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [852563536] [2022-04-28 05:51:26,025 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:26,025 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:51:26,025 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:26,025 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:26,053 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:26,053 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:51:26,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:26,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:51:26,054 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:26,054 INFO L87 Difference]: Start difference. First operand 88 states and 122 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:26,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:26,294 INFO L93 Difference]: Finished difference Result 127 states and 178 transitions. [2022-04-28 05:51:26,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:26,294 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:51:26,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:26,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:26,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:51:26,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:26,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:51:26,298 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-28 05:51:26,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:26,380 INFO L225 Difference]: With dead ends: 127 [2022-04-28 05:51:26,380 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 05:51:26,382 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:26,383 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:26,383 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:26,384 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 05:51:26,523 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-04-28 05:51:26,523 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:26,524 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:26,524 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:26,524 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:26,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:26,528 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:51:26,528 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:51:26,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:26,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:26,529 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:51:26,529 INFO L87 Difference]: Start difference. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:51:26,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:26,532 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:51:26,532 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:51:26,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:26,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:26,533 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:26,533 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:26,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:51:26,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 124 transitions. [2022-04-28 05:51:26,536 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 124 transitions. Word has length 35 [2022-04-28 05:51:26,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:26,536 INFO L495 AbstractCegarLoop]: Abstraction has 90 states and 124 transitions. [2022-04-28 05:51:26,536 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:26,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 90 states and 124 transitions. [2022-04-28 05:51:26,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:26,678 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:51:26,679 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:51:26,679 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:26,679 INFO L195 NwaCegarLoop]: trace histogram [3, 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] [2022-04-28 05:51:26,695 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:26,883 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:26,883 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:26,884 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:26,884 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 1 times [2022-04-28 05:51:26,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:26,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1269789331] [2022-04-28 05:51:26,885 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:26,885 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 2 times [2022-04-28 05:51:26,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:26,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [680257174] [2022-04-28 05:51:26,885 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:26,885 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:26,905 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:26,905 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1328778656] [2022-04-28 05:51:26,905 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:26,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:26,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:26,907 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:26,919 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 05:51:26,969 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:26,969 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:26,970 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:51:26,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:26,987 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:27,191 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:51:27,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,194 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3748#(<= ~counter~0 0)} {3740#true} #108#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,194 INFO L272 TraceCheckUtils]: 4: Hoare triple {3748#(<= ~counter~0 0)} call #t~ret9 := main(); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,194 INFO L290 TraceCheckUtils]: 5: Hoare triple {3748#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,195 INFO L272 TraceCheckUtils]: 6: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,195 INFO L290 TraceCheckUtils]: 7: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,195 INFO L290 TraceCheckUtils]: 8: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,196 INFO L290 TraceCheckUtils]: 9: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,201 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #94#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,202 INFO L272 TraceCheckUtils]: 11: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,203 INFO L290 TraceCheckUtils]: 12: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,203 INFO L290 TraceCheckUtils]: 13: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,204 INFO L290 TraceCheckUtils]: 14: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,204 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #96#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {3748#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:27,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {3748#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:27,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {3797#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:27,206 INFO L290 TraceCheckUtils]: 19: Hoare triple {3797#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:27,207 INFO L290 TraceCheckUtils]: 20: Hoare triple {3797#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:27,207 INFO L290 TraceCheckUtils]: 21: Hoare triple {3807#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:27,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {3807#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:27,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {3807#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:27,209 INFO L290 TraceCheckUtils]: 24: Hoare triple {3807#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:27,209 INFO L290 TraceCheckUtils]: 25: Hoare triple {3820#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:27,210 INFO L290 TraceCheckUtils]: 26: Hoare triple {3820#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:27,210 INFO L290 TraceCheckUtils]: 27: Hoare triple {3820#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3830#(<= |main_#t~post7| 3)} is VALID [2022-04-28 05:51:27,211 INFO L290 TraceCheckUtils]: 28: Hoare triple {3830#(<= |main_#t~post7| 3)} assume !(#t~post7 < 50);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:51:27,211 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3741#false} is VALID [2022-04-28 05:51:27,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:51:27,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 50);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:51:27,211 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3741#false} is VALID [2022-04-28 05:51:27,211 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:51:27,212 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:51:27,212 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:51:27,212 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:27,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 50);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:51:27,456 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3741#false} is VALID [2022-04-28 05:51:27,457 INFO L290 TraceCheckUtils]: 28: Hoare triple {3876#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:51:27,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {3880#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3876#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:51:27,458 INFO L290 TraceCheckUtils]: 26: Hoare triple {3880#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3880#(< ~counter~0 50)} is VALID [2022-04-28 05:51:27,458 INFO L290 TraceCheckUtils]: 25: Hoare triple {3880#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {3880#(< ~counter~0 50)} is VALID [2022-04-28 05:51:27,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {3890#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3880#(< ~counter~0 50)} is VALID [2022-04-28 05:51:27,459 INFO L290 TraceCheckUtils]: 23: Hoare triple {3890#(< ~counter~0 49)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3890#(< ~counter~0 49)} is VALID [2022-04-28 05:51:27,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {3890#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {3890#(< ~counter~0 49)} is VALID [2022-04-28 05:51:27,460 INFO L290 TraceCheckUtils]: 21: Hoare triple {3890#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {3890#(< ~counter~0 49)} is VALID [2022-04-28 05:51:27,460 INFO L290 TraceCheckUtils]: 20: Hoare triple {3903#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3890#(< ~counter~0 49)} is VALID [2022-04-28 05:51:27,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {3903#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3903#(< ~counter~0 48)} is VALID [2022-04-28 05:51:27,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {3903#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {3903#(< ~counter~0 48)} is VALID [2022-04-28 05:51:27,462 INFO L290 TraceCheckUtils]: 17: Hoare triple {3913#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3903#(< ~counter~0 48)} is VALID [2022-04-28 05:51:27,462 INFO L290 TraceCheckUtils]: 16: Hoare triple {3913#(< ~counter~0 47)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,463 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3740#true} {3913#(< ~counter~0 47)} #96#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:51:27,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:51:27,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:51:27,463 INFO L272 TraceCheckUtils]: 11: Hoare triple {3913#(< ~counter~0 47)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:51:27,464 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3740#true} {3913#(< ~counter~0 47)} #94#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:51:27,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:51:27,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:51:27,464 INFO L272 TraceCheckUtils]: 6: Hoare triple {3913#(< ~counter~0 47)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:51:27,464 INFO L290 TraceCheckUtils]: 5: Hoare triple {3913#(< ~counter~0 47)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,465 INFO L272 TraceCheckUtils]: 4: Hoare triple {3913#(< ~counter~0 47)} call #t~ret9 := main(); {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,465 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3913#(< ~counter~0 47)} {3740#true} #108#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {3913#(< ~counter~0 47)} assume true; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3913#(< ~counter~0 47)} is VALID [2022-04-28 05:51:27,466 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:51:27,466 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:27,466 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:27,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [680257174] [2022-04-28 05:51:27,466 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:27,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1328778656] [2022-04-28 05:51:27,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1328778656] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:27,466 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:27,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 05:51:27,467 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:27,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1269789331] [2022-04-28 05:51:27,467 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1269789331] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:27,467 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:27,467 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:51:27,467 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [560481989] [2022-04-28 05:51:27,467 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:27,467 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:51:27,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:27,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:27,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:27,491 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:51:27,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:27,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:51:27,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:51:27,492 INFO L87 Difference]: Start difference. First operand 90 states and 124 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:27,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:27,845 INFO L93 Difference]: Finished difference Result 163 states and 227 transitions. [2022-04-28 05:51:27,845 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:51:27,845 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:51:27,846 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:27,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:27,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:51:27,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:27,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:51:27,849 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-04-28 05:51:27,935 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:27,937 INFO L225 Difference]: With dead ends: 163 [2022-04-28 05:51:27,937 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 05:51:27,938 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=96, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:51:27,938 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:27,938 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 180 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:27,939 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 05:51:28,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 109. [2022-04-28 05:51:28,104 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:28,104 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:51:28,105 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:51:28,105 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:51:28,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:28,108 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:51:28,109 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:51:28,109 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:28,109 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:28,109 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:51:28,110 INFO L87 Difference]: Start difference. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:51:28,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:28,113 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:51:28,113 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:51:28,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:28,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:28,114 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:28,114 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:28,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:51:28,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 147 transitions. [2022-04-28 05:51:28,118 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 147 transitions. Word has length 36 [2022-04-28 05:51:28,119 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:28,119 INFO L495 AbstractCegarLoop]: Abstraction has 109 states and 147 transitions. [2022-04-28 05:51:28,119 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:28,119 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 147 transitions. [2022-04-28 05:51:28,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:28,287 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 147 transitions. [2022-04-28 05:51:28,287 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:51:28,287 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:28,287 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:28,313 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:28,488 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:28,488 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:28,488 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:28,488 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-28 05:51:28,488 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:28,488 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [273143881] [2022-04-28 05:51:28,489 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:28,489 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 2 times [2022-04-28 05:51:28,489 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:28,489 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1635943153] [2022-04-28 05:51:28,489 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:28,489 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:28,505 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:28,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [678628060] [2022-04-28 05:51:28,505 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:28,505 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:28,505 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:28,506 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:28,512 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 05:51:28,553 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:28,553 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:28,554 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 05:51:28,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:28,563 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:28,895 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:51:28,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:28,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:28,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:28,897 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} {4737#true} #94#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:28,897 INFO L272 TraceCheckUtils]: 11: Hoare triple {4774#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:51:28,898 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:51:28,898 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:51:28,898 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:51:28,899 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4774#(<= 1 main_~x~0)} #96#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:28,899 INFO L290 TraceCheckUtils]: 16: Hoare triple {4774#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,900 INFO L290 TraceCheckUtils]: 17: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,901 INFO L290 TraceCheckUtils]: 20: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,901 INFO L290 TraceCheckUtils]: 21: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,901 INFO L290 TraceCheckUtils]: 22: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:51:28,902 INFO L290 TraceCheckUtils]: 23: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,903 INFO L290 TraceCheckUtils]: 25: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,903 INFO L290 TraceCheckUtils]: 26: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,903 INFO L290 TraceCheckUtils]: 27: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,904 INFO L290 TraceCheckUtils]: 28: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,904 INFO L290 TraceCheckUtils]: 29: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,905 INFO L290 TraceCheckUtils]: 31: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 50);havoc #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:51:28,906 INFO L272 TraceCheckUtils]: 32: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:28,907 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:28,907 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:51:28,907 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:51:28,907 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:51:28,907 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:29,157 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:51:29,161 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:51:29,165 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:29,165 INFO L272 TraceCheckUtils]: 32: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:29,166 INFO L290 TraceCheckUtils]: 31: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,167 INFO L290 TraceCheckUtils]: 30: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,167 INFO L290 TraceCheckUtils]: 29: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,168 INFO L290 TraceCheckUtils]: 28: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,168 INFO L290 TraceCheckUtils]: 27: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,168 INFO L290 TraceCheckUtils]: 26: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,169 INFO L290 TraceCheckUtils]: 25: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,169 INFO L290 TraceCheckUtils]: 24: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,170 INFO L290 TraceCheckUtils]: 23: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:29,170 INFO L290 TraceCheckUtils]: 22: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,170 INFO L290 TraceCheckUtils]: 21: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,171 INFO L290 TraceCheckUtils]: 19: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,171 INFO L290 TraceCheckUtils]: 18: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,172 INFO L290 TraceCheckUtils]: 17: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,172 INFO L290 TraceCheckUtils]: 16: Hoare triple {4737#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:29,172 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4737#true} #96#return; {4737#true} is VALID [2022-04-28 05:51:29,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:51:29,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:51:29,172 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:51:29,172 INFO L272 TraceCheckUtils]: 11: Hoare triple {4737#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:51:29,172 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4737#true} {4737#true} #94#return; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:51:29,173 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:29,173 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:29,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1635943153] [2022-04-28 05:51:29,173 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:29,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [678628060] [2022-04-28 05:51:29,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [678628060] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:29,174 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:29,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-28 05:51:29,174 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:29,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [273143881] [2022-04-28 05:51:29,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [273143881] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:29,174 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:29,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:29,174 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1088517690] [2022-04-28 05:51:29,174 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:29,175 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:51:29,175 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:29,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:29,204 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:29,205 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:29,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:29,205 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:29,205 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:29,205 INFO L87 Difference]: Start difference. First operand 109 states and 147 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:29,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:29,920 INFO L93 Difference]: Finished difference Result 154 states and 208 transitions. [2022-04-28 05:51:29,920 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:51:29,921 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:51:29,921 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:29,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:29,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:51:29,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:29,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:51:29,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-28 05:51:30,019 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:30,022 INFO L225 Difference]: With dead ends: 154 [2022-04-28 05:51:30,023 INFO L226 Difference]: Without dead ends: 152 [2022-04-28 05:51:30,023 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:51:30,023 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 61 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:30,024 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 326 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:51:30,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-28 05:51:30,274 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 148. [2022-04-28 05:51:30,274 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:30,275 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:30,276 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:30,276 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:30,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:30,283 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:51:30,283 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:51:30,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:30,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:30,287 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:51:30,287 INFO L87 Difference]: Start difference. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:51:30,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:30,295 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:51:30,295 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:51:30,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:30,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:30,295 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:30,295 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:30,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:30,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 202 transitions. [2022-04-28 05:51:30,300 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 202 transitions. Word has length 36 [2022-04-28 05:51:30,300 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:30,300 INFO L495 AbstractCegarLoop]: Abstraction has 148 states and 202 transitions. [2022-04-28 05:51:30,300 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:30,301 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 148 states and 202 transitions. [2022-04-28 05:51:30,487 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:30,487 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 202 transitions. [2022-04-28 05:51:30,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 05:51:30,487 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:30,488 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:30,506 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:30,691 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 05:51:30,692 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:30,692 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:30,692 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 3 times [2022-04-28 05:51:30,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:30,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [83798252] [2022-04-28 05:51:30,692 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:30,692 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 4 times [2022-04-28 05:51:30,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:30,693 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1367239623] [2022-04-28 05:51:30,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:30,693 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:30,709 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:30,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [329755516] [2022-04-28 05:51:30,710 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:51:30,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:30,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:30,711 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:30,718 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 05:51:30,751 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:51:30,751 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:30,752 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:51:30,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:30,761 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:30,866 INFO L272 TraceCheckUtils]: 0: Hoare triple {5875#true} call ULTIMATE.init(); {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 1: Hoare triple {5875#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5875#true} {5875#true} #108#return; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {5875#true} call #t~ret9 := main(); {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {5875#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L272 TraceCheckUtils]: 6: Hoare triple {5875#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:51:30,866 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5875#true} {5875#true} #94#return; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L272 TraceCheckUtils]: 11: Hoare triple {5875#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5875#true} {5875#true} #96#return; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 16: Hoare triple {5875#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 17: Hoare triple {5875#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {5875#true} assume !!(#t~post6 < 50);havoc #t~post6; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 19: Hoare triple {5875#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5875#true} is VALID [2022-04-28 05:51:30,867 INFO L290 TraceCheckUtils]: 20: Hoare triple {5875#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5875#true} is VALID [2022-04-28 05:51:30,868 INFO L290 TraceCheckUtils]: 21: Hoare triple {5875#true} assume !!(#t~post7 < 50);havoc #t~post7; {5875#true} is VALID [2022-04-28 05:51:30,875 INFO L290 TraceCheckUtils]: 22: Hoare triple {5875#true} assume !(~c~0 >= ~b~0); {5946#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:51:30,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {5946#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:30,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {5950#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:30,877 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:30,877 INFO L290 TraceCheckUtils]: 26: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:30,877 INFO L290 TraceCheckUtils]: 27: Hoare triple {5960#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:30,878 INFO L290 TraceCheckUtils]: 28: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:30,878 INFO L290 TraceCheckUtils]: 29: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 30: Hoare triple {5876#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 31: Hoare triple {5876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 32: Hoare triple {5876#false} assume !(#t~post6 < 50);havoc #t~post6; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L272 TraceCheckUtils]: 33: Hoare triple {5876#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 34: Hoare triple {5876#false} ~cond := #in~cond; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 35: Hoare triple {5876#false} assume 0 == ~cond; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L290 TraceCheckUtils]: 36: Hoare triple {5876#false} assume !false; {5876#false} is VALID [2022-04-28 05:51:30,879 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:30,879 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:30,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:30,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1367239623] [2022-04-28 05:51:30,880 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:30,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [329755516] [2022-04-28 05:51:30,880 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [329755516] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:30,880 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:30,880 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:30,880 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:30,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [83798252] [2022-04-28 05:51:30,880 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [83798252] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:30,880 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:30,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:30,881 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [69029497] [2022-04-28 05:51:30,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:30,881 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:51:30,881 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:30,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:30,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:30,908 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:30,908 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:30,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:30,908 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:30,909 INFO L87 Difference]: Start difference. First operand 148 states and 202 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:31,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:31,589 INFO L93 Difference]: Finished difference Result 300 states and 442 transitions. [2022-04-28 05:51:31,589 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:31,590 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:51:31,590 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:31,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:31,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:51:31,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:31,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:51:31,594 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-28 05:51:31,697 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:31,704 INFO L225 Difference]: With dead ends: 300 [2022-04-28 05:51:31,704 INFO L226 Difference]: Without dead ends: 249 [2022-04-28 05:51:31,705 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:51:31,705 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:31,706 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 176 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:31,706 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-04-28 05:51:31,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 175. [2022-04-28 05:51:31,999 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:32,000 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:32,000 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:32,000 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:32,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:32,009 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:51:32,009 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:51:32,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:32,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:32,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:51:32,011 INFO L87 Difference]: Start difference. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:51:32,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:32,019 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:51:32,019 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:51:32,020 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:32,020 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:32,020 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:32,020 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:32,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:51:32,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 239 transitions. [2022-04-28 05:51:32,026 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 239 transitions. Word has length 37 [2022-04-28 05:51:32,026 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:32,026 INFO L495 AbstractCegarLoop]: Abstraction has 175 states and 239 transitions. [2022-04-28 05:51:32,026 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:51:32,026 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 175 states and 239 transitions. [2022-04-28 05:51:32,255 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:32,256 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 239 transitions. [2022-04-28 05:51:32,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:51:32,256 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:32,256 INFO L195 NwaCegarLoop]: trace histogram [3, 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] [2022-04-28 05:51:32,272 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:32,457 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 05:51:32,457 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:32,457 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:32,457 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-28 05:51:32,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:32,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1042504546] [2022-04-28 05:51:32,458 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:32,458 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 2 times [2022-04-28 05:51:32,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:32,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1227480188] [2022-04-28 05:51:32,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:32,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:32,470 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:32,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [155398759] [2022-04-28 05:51:32,470 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:32,471 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:32,471 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:32,472 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:32,475 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 05:51:32,519 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:32,519 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:32,520 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:32,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:32,529 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:32,740 INFO L272 TraceCheckUtils]: 0: Hoare triple {7443#true} call ULTIMATE.init(); {7443#true} is VALID [2022-04-28 05:51:32,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {7443#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7443#true} is VALID [2022-04-28 05:51:32,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7443#true} {7443#true} #108#return; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {7443#true} call #t~ret9 := main(); {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {7443#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L272 TraceCheckUtils]: 6: Hoare triple {7443#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L290 TraceCheckUtils]: 8: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L290 TraceCheckUtils]: 9: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7443#true} {7443#true} #94#return; {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L272 TraceCheckUtils]: 11: Hoare triple {7443#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:51:32,741 INFO L290 TraceCheckUtils]: 12: Hoare triple {7443#true} ~cond := #in~cond; {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:32,742 INFO L290 TraceCheckUtils]: 13: Hoare triple {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:32,742 INFO L290 TraceCheckUtils]: 14: Hoare triple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:32,743 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} {7443#true} #96#return; {7495#(<= 1 main_~y~0)} is VALID [2022-04-28 05:51:32,743 INFO L290 TraceCheckUtils]: 16: Hoare triple {7495#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:32,743 INFO L290 TraceCheckUtils]: 17: Hoare triple {7499#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:32,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:32,744 INFO L290 TraceCheckUtils]: 19: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,744 INFO L290 TraceCheckUtils]: 20: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,745 INFO L290 TraceCheckUtils]: 21: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 50);havoc #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,745 INFO L290 TraceCheckUtils]: 22: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,745 INFO L290 TraceCheckUtils]: 23: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,746 INFO L290 TraceCheckUtils]: 24: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,746 INFO L272 TraceCheckUtils]: 25: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:51:32,747 INFO L290 TraceCheckUtils]: 26: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:51:32,747 INFO L290 TraceCheckUtils]: 27: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:51:32,747 INFO L290 TraceCheckUtils]: 28: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:51:32,748 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #98#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,748 INFO L272 TraceCheckUtils]: 30: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:51:32,748 INFO L290 TraceCheckUtils]: 31: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:51:32,748 INFO L290 TraceCheckUtils]: 32: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:51:32,748 INFO L290 TraceCheckUtils]: 33: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:51:32,749 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #100#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:32,749 INFO L272 TraceCheckUtils]: 35: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:32,750 INFO L290 TraceCheckUtils]: 36: Hoare triple {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:32,750 INFO L290 TraceCheckUtils]: 37: Hoare triple {7562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7444#false} is VALID [2022-04-28 05:51:32,750 INFO L290 TraceCheckUtils]: 38: Hoare triple {7444#false} assume !false; {7444#false} is VALID [2022-04-28 05:51:32,750 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 05:51:32,750 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:32,750 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:32,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1227480188] [2022-04-28 05:51:32,751 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:32,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [155398759] [2022-04-28 05:51:32,751 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [155398759] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:32,751 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:32,751 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:32,751 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:32,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1042504546] [2022-04-28 05:51:32,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1042504546] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:32,752 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:32,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:32,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1933834650] [2022-04-28 05:51:32,752 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:32,753 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:32,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:32,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:32,778 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:32,778 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:32,779 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:32,779 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:32,779 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:51:32,779 INFO L87 Difference]: Start difference. First operand 175 states and 239 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:33,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:33,641 INFO L93 Difference]: Finished difference Result 193 states and 262 transitions. [2022-04-28 05:51:33,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:51:33,641 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:33,641 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:33,641 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:33,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:51:33,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:33,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:51:33,644 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 92 transitions. [2022-04-28 05:51:33,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:33,731 INFO L225 Difference]: With dead ends: 193 [2022-04-28 05:51:33,731 INFO L226 Difference]: Without dead ends: 191 [2022-04-28 05:51:33,731 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:51:33,732 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 57 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:33,732 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [61 Valid, 270 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:33,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-28 05:51:34,096 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2022-04-28 05:51:34,096 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:34,097 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:34,097 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:34,097 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:34,102 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:34,102 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:51:34,103 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:51:34,103 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:34,103 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:34,104 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:51:34,104 INFO L87 Difference]: Start difference. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:51:34,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:34,108 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:51:34,109 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:51:34,109 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:34,109 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:34,109 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:34,109 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:34,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:34,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 258 transitions. [2022-04-28 05:51:34,115 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 258 transitions. Word has length 39 [2022-04-28 05:51:34,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:34,115 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 258 transitions. [2022-04-28 05:51:34,115 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:34,115 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 258 transitions. [2022-04-28 05:51:34,363 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:34,363 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 258 transitions. [2022-04-28 05:51:34,363 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 05:51:34,363 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:34,363 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:34,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:34,564 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 05:51:34,564 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:34,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:34,564 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-28 05:51:34,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:34,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1071567401] [2022-04-28 05:51:34,565 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:34,565 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 2 times [2022-04-28 05:51:34,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:34,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1530194071] [2022-04-28 05:51:34,565 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:34,565 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:34,582 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:34,582 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1110192535] [2022-04-28 05:51:34,582 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:34,582 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:34,583 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:34,586 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:34,588 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 05:51:34,628 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:34,628 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:34,629 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 05:51:34,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:34,642 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:35,156 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:51:35,156 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:51:35,156 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:35,156 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:51:35,157 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:51:35,157 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:51:35,157 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:35,157 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:35,157 INFO L290 TraceCheckUtils]: 8: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:35,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:35,158 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8724#true} #94#return; {8761#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:35,158 INFO L272 TraceCheckUtils]: 11: Hoare triple {8761#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:35,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:35,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:35,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:35,159 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8761#(<= 1 main_~x~0)} #96#return; {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,160 INFO L290 TraceCheckUtils]: 16: Hoare triple {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,162 INFO L290 TraceCheckUtils]: 21: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,162 INFO L290 TraceCheckUtils]: 22: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:35,163 INFO L290 TraceCheckUtils]: 23: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,163 INFO L290 TraceCheckUtils]: 24: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,164 INFO L290 TraceCheckUtils]: 25: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,164 INFO L290 TraceCheckUtils]: 26: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,164 INFO L290 TraceCheckUtils]: 27: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,165 INFO L290 TraceCheckUtils]: 28: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,165 INFO L290 TraceCheckUtils]: 29: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,166 INFO L290 TraceCheckUtils]: 31: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 50);havoc #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,166 INFO L272 TraceCheckUtils]: 32: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:35,166 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:35,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:35,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:35,167 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:35,173 INFO L272 TraceCheckUtils]: 37: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:35,175 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:35,176 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:51:35,176 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:51:35,176 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:35,176 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:35,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:51:35,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:51:35,486 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:35,487 INFO L272 TraceCheckUtils]: 37: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:35,488 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,488 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:35,488 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:35,488 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:35,488 INFO L272 TraceCheckUtils]: 32: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:35,488 INFO L290 TraceCheckUtils]: 31: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,489 INFO L290 TraceCheckUtils]: 29: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,489 INFO L290 TraceCheckUtils]: 28: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,489 INFO L290 TraceCheckUtils]: 27: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,490 INFO L290 TraceCheckUtils]: 26: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,490 INFO L290 TraceCheckUtils]: 25: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:35,490 INFO L290 TraceCheckUtils]: 24: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:37,492 WARN L290 TraceCheckUtils]: 23: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:51:37,493 INFO L290 TraceCheckUtils]: 22: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} assume !(~c~0 >= ~b~0); {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:51:37,493 INFO L290 TraceCheckUtils]: 21: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:51:37,494 INFO L290 TraceCheckUtils]: 20: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:51:37,494 INFO L290 TraceCheckUtils]: 19: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:51:37,495 INFO L290 TraceCheckUtils]: 18: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:37,495 INFO L290 TraceCheckUtils]: 17: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:37,495 INFO L290 TraceCheckUtils]: 16: Hoare triple {8724#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:37,495 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8724#true} {8724#true} #96#return; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 14: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 13: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L272 TraceCheckUtils]: 11: Hoare triple {8724#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8724#true} {8724#true} #94#return; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:51:37,496 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:51:37,497 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:37,497 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:37,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1530194071] [2022-04-28 05:51:37,497 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:37,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1110192535] [2022-04-28 05:51:37,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1110192535] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:37,497 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:37,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:51:37,497 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:37,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1071567401] [2022-04-28 05:51:37,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1071567401] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:37,497 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:37,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:51:37,497 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1378162265] [2022-04-28 05:51:37,497 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:37,498 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:51:37,498 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:37,498 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:37,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:37,541 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:51:37,541 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:37,541 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:51:37,541 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:37,542 INFO L87 Difference]: Start difference. First operand 190 states and 258 transitions. Second operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:38,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:38,745 INFO L93 Difference]: Finished difference Result 199 states and 266 transitions. [2022-04-28 05:51:38,745 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:51:38,745 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:51:38,745 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:38,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:38,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:51:38,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:38,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:51:38,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-28 05:51:38,845 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:38,849 INFO L225 Difference]: With dead ends: 199 [2022-04-28 05:51:38,849 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:51:38,849 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:51:38,850 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 104 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:38,850 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 310 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:51:38,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:51:39,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-28 05:51:39,202 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:39,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:39,203 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:39,204 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:39,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:39,209 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:51:39,209 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:51:39,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:39,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:39,210 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:51:39,210 INFO L87 Difference]: Start difference. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:51:39,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:39,215 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:51:39,215 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:51:39,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:39,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:39,216 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:39,216 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:39,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:39,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 261 transitions. [2022-04-28 05:51:39,221 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 261 transitions. Word has length 41 [2022-04-28 05:51:39,222 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:39,222 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 261 transitions. [2022-04-28 05:51:39,222 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:39,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 261 transitions. [2022-04-28 05:51:39,493 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:39,493 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 261 transitions. [2022-04-28 05:51:39,494 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 05:51:39,494 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:39,494 INFO L195 NwaCegarLoop]: trace histogram [4, 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, 1, 1, 1] [2022-04-28 05:51:39,518 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-28 05:51:39,716 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-28 05:51:39,716 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:39,717 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:39,717 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-28 05:51:39,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:39,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2105809070] [2022-04-28 05:51:39,717 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:39,717 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 2 times [2022-04-28 05:51:39,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:39,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1654568147] [2022-04-28 05:51:39,718 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:39,718 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:39,729 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:39,730 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [48632523] [2022-04-28 05:51:39,730 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:39,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:39,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:39,731 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:39,740 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 05:51:39,775 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:39,776 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:39,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:39,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:39,788 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:39,909 INFO L272 TraceCheckUtils]: 0: Hoare triple {10169#true} call ULTIMATE.init(); {10169#true} is VALID [2022-04-28 05:51:39,909 INFO L290 TraceCheckUtils]: 1: Hoare triple {10169#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10169#true} is VALID [2022-04-28 05:51:39,909 INFO L290 TraceCheckUtils]: 2: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10169#true} {10169#true} #108#return; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L272 TraceCheckUtils]: 4: Hoare triple {10169#true} call #t~ret9 := main(); {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 5: Hoare triple {10169#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L272 TraceCheckUtils]: 6: Hoare triple {10169#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 7: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 8: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 9: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10169#true} {10169#true} #94#return; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L272 TraceCheckUtils]: 11: Hoare triple {10169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 12: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 13: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 14: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10169#true} {10169#true} #96#return; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 16: Hoare triple {10169#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 17: Hoare triple {10169#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 18: Hoare triple {10169#true} assume !!(#t~post6 < 50);havoc #t~post6; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 19: Hoare triple {10169#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10169#true} is VALID [2022-04-28 05:51:39,910 INFO L290 TraceCheckUtils]: 20: Hoare triple {10169#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10169#true} is VALID [2022-04-28 05:51:39,911 INFO L290 TraceCheckUtils]: 21: Hoare triple {10169#true} assume !!(#t~post7 < 50);havoc #t~post7; {10169#true} is VALID [2022-04-28 05:51:39,911 INFO L290 TraceCheckUtils]: 22: Hoare triple {10169#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,911 INFO L290 TraceCheckUtils]: 23: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,912 INFO L290 TraceCheckUtils]: 24: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,912 INFO L272 TraceCheckUtils]: 25: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:39,912 INFO L290 TraceCheckUtils]: 26: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:39,912 INFO L290 TraceCheckUtils]: 27: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:39,912 INFO L290 TraceCheckUtils]: 28: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,913 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,913 INFO L272 TraceCheckUtils]: 30: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:39,913 INFO L290 TraceCheckUtils]: 31: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:39,913 INFO L290 TraceCheckUtils]: 32: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:39,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,913 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,914 INFO L272 TraceCheckUtils]: 35: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:39,914 INFO L290 TraceCheckUtils]: 36: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:39,914 INFO L290 TraceCheckUtils]: 37: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:39,914 INFO L290 TraceCheckUtils]: 38: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:39,914 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:39,915 INFO L272 TraceCheckUtils]: 40: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:39,915 INFO L290 TraceCheckUtils]: 41: Hoare triple {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:39,915 INFO L290 TraceCheckUtils]: 42: Hoare triple {10299#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10170#false} is VALID [2022-04-28 05:51:39,916 INFO L290 TraceCheckUtils]: 43: Hoare triple {10170#false} assume !false; {10170#false} is VALID [2022-04-28 05:51:39,928 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 05:51:39,928 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:39,928 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:39,928 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1654568147] [2022-04-28 05:51:39,928 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:39,928 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [48632523] [2022-04-28 05:51:39,928 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [48632523] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:39,929 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:39,929 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:39,929 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:39,929 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2105809070] [2022-04-28 05:51:39,929 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2105809070] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:39,929 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:39,929 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:39,929 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1804051925] [2022-04-28 05:51:39,929 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:39,930 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:51:39,930 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:39,930 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:39,959 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:39,959 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:39,959 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:39,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:39,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:39,960 INFO L87 Difference]: Start difference. First operand 194 states and 261 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:40,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:40,606 INFO L93 Difference]: Finished difference Result 261 states and 367 transitions. [2022-04-28 05:51:40,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:40,606 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:51:40,606 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:40,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:40,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:40,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:40,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:40,608 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:51:40,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:40,672 INFO L225 Difference]: With dead ends: 261 [2022-04-28 05:51:40,672 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 05:51:40,672 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:40,673 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:40,673 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 163 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:40,674 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 05:51:41,166 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 228. [2022-04-28 05:51:41,166 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:41,167 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:41,167 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:41,167 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:41,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,175 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:51:41,175 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:51:41,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,176 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:51:41,177 INFO L87 Difference]: Start difference. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:51:41,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,184 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:51:41,184 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:51:41,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:41,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:41,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:41,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 318 transitions. [2022-04-28 05:51:41,206 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 318 transitions. Word has length 44 [2022-04-28 05:51:41,206 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:41,207 INFO L495 AbstractCegarLoop]: Abstraction has 228 states and 318 transitions. [2022-04-28 05:51:41,207 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:41,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 228 states and 318 transitions. [2022-04-28 05:51:41,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:41,611 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 318 transitions. [2022-04-28 05:51:41,612 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:51:41,612 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:41,612 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 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] [2022-04-28 05:51:41,637 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:41,812 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 05:51:41,813 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:41,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:41,813 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 1 times [2022-04-28 05:51:41,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:41,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [576504925] [2022-04-28 05:51:41,814 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:41,814 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 2 times [2022-04-28 05:51:41,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:41,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [734569295] [2022-04-28 05:51:41,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:41,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:41,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:41,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [559855949] [2022-04-28 05:51:41,852 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:41,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:41,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:41,859 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:41,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 05:51:41,914 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:41,914 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:41,915 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:41,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:41,934 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:42,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:42,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11811#(<= ~counter~0 0)} {11803#true} #108#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,174 INFO L272 TraceCheckUtils]: 4: Hoare triple {11811#(<= ~counter~0 0)} call #t~ret9 := main(); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {11811#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,174 INFO L272 TraceCheckUtils]: 6: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,175 INFO L290 TraceCheckUtils]: 7: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,175 INFO L290 TraceCheckUtils]: 8: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,175 INFO L290 TraceCheckUtils]: 9: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,176 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #94#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,176 INFO L272 TraceCheckUtils]: 11: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,176 INFO L290 TraceCheckUtils]: 12: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,177 INFO L290 TraceCheckUtils]: 13: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,177 INFO L290 TraceCheckUtils]: 14: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,177 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #96#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,177 INFO L290 TraceCheckUtils]: 16: Hoare triple {11811#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:42,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {11811#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:42,178 INFO L290 TraceCheckUtils]: 18: Hoare triple {11860#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:42,179 INFO L290 TraceCheckUtils]: 19: Hoare triple {11860#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:42,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {11860#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:42,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {11870#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:42,180 INFO L290 TraceCheckUtils]: 22: Hoare triple {11870#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:42,180 INFO L290 TraceCheckUtils]: 23: Hoare triple {11870#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:42,180 INFO L290 TraceCheckUtils]: 24: Hoare triple {11870#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:42,181 INFO L290 TraceCheckUtils]: 25: Hoare triple {11883#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:42,181 INFO L290 TraceCheckUtils]: 26: Hoare triple {11883#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:42,181 INFO L290 TraceCheckUtils]: 27: Hoare triple {11883#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:42,181 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:42,182 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:42,182 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11903#(<= |main_#t~post8| 4)} is VALID [2022-04-28 05:51:42,182 INFO L290 TraceCheckUtils]: 31: Hoare triple {11903#(<= |main_#t~post8| 4)} assume !(#t~post8 < 50);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:42,182 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 50);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 50);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:42,183 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:42,183 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 50);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 50);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:42,420 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:42,421 INFO L290 TraceCheckUtils]: 31: Hoare triple {11967#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:42,421 INFO L290 TraceCheckUtils]: 30: Hoare triple {11971#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11967#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:51:42,421 INFO L290 TraceCheckUtils]: 29: Hoare triple {11971#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11971#(< ~counter~0 50)} is VALID [2022-04-28 05:51:42,421 INFO L290 TraceCheckUtils]: 28: Hoare triple {11971#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {11971#(< ~counter~0 50)} is VALID [2022-04-28 05:51:42,422 INFO L290 TraceCheckUtils]: 27: Hoare triple {11981#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11971#(< ~counter~0 50)} is VALID [2022-04-28 05:51:42,422 INFO L290 TraceCheckUtils]: 26: Hoare triple {11981#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11981#(< ~counter~0 49)} is VALID [2022-04-28 05:51:42,423 INFO L290 TraceCheckUtils]: 25: Hoare triple {11981#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {11981#(< ~counter~0 49)} is VALID [2022-04-28 05:51:42,423 INFO L290 TraceCheckUtils]: 24: Hoare triple {11991#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11981#(< ~counter~0 49)} is VALID [2022-04-28 05:51:42,423 INFO L290 TraceCheckUtils]: 23: Hoare triple {11991#(< ~counter~0 48)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11991#(< ~counter~0 48)} is VALID [2022-04-28 05:51:42,424 INFO L290 TraceCheckUtils]: 22: Hoare triple {11991#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {11991#(< ~counter~0 48)} is VALID [2022-04-28 05:51:42,424 INFO L290 TraceCheckUtils]: 21: Hoare triple {11991#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {11991#(< ~counter~0 48)} is VALID [2022-04-28 05:51:42,424 INFO L290 TraceCheckUtils]: 20: Hoare triple {12004#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11991#(< ~counter~0 48)} is VALID [2022-04-28 05:51:42,425 INFO L290 TraceCheckUtils]: 19: Hoare triple {12004#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12004#(< ~counter~0 47)} is VALID [2022-04-28 05:51:42,425 INFO L290 TraceCheckUtils]: 18: Hoare triple {12004#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {12004#(< ~counter~0 47)} is VALID [2022-04-28 05:51:42,425 INFO L290 TraceCheckUtils]: 17: Hoare triple {12014#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12004#(< ~counter~0 47)} is VALID [2022-04-28 05:51:42,425 INFO L290 TraceCheckUtils]: 16: Hoare triple {12014#(< ~counter~0 46)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,426 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11803#true} {12014#(< ~counter~0 46)} #96#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:42,426 INFO L290 TraceCheckUtils]: 13: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:42,426 INFO L290 TraceCheckUtils]: 12: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:42,426 INFO L272 TraceCheckUtils]: 11: Hoare triple {12014#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:42,427 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11803#true} {12014#(< ~counter~0 46)} #94#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,427 INFO L290 TraceCheckUtils]: 9: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:42,427 INFO L290 TraceCheckUtils]: 8: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:42,427 INFO L290 TraceCheckUtils]: 7: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:42,427 INFO L272 TraceCheckUtils]: 6: Hoare triple {12014#(< ~counter~0 46)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:42,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {12014#(< ~counter~0 46)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {12014#(< ~counter~0 46)} call #t~ret9 := main(); {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,428 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12014#(< ~counter~0 46)} {11803#true} #108#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,428 INFO L290 TraceCheckUtils]: 2: Hoare triple {12014#(< ~counter~0 46)} assume true; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12014#(< ~counter~0 46)} is VALID [2022-04-28 05:51:42,428 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:42,429 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:42,429 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:42,429 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [734569295] [2022-04-28 05:51:42,429 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:42,429 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [559855949] [2022-04-28 05:51:42,429 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [559855949] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:42,429 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:42,429 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:42,429 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:42,429 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [576504925] [2022-04-28 05:51:42,429 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [576504925] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:42,429 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:42,429 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:42,429 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [208691163] [2022-04-28 05:51:42,429 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:42,430 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:42,430 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:42,430 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:42,455 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:42,455 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:42,455 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:42,455 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:42,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:42,455 INFO L87 Difference]: Start difference. First operand 228 states and 318 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:43,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,204 INFO L93 Difference]: Finished difference Result 429 states and 607 transitions. [2022-04-28 05:51:43,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:43,204 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:43,204 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:43,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:43,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:43,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:43,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:43,208 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 132 transitions. [2022-04-28 05:51:43,315 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:43,322 INFO L225 Difference]: With dead ends: 429 [2022-04-28 05:51:43,322 INFO L226 Difference]: Without dead ends: 264 [2022-04-28 05:51:43,324 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:43,324 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 52 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:43,325 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 201 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:43,326 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-28 05:51:43,971 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 258. [2022-04-28 05:51:43,971 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:43,972 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:43,972 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:43,973 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:43,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,981 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:43,981 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:43,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:43,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:43,982 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:43,983 INFO L87 Difference]: Start difference. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:43,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,990 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:43,990 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:43,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:43,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:43,992 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:43,992 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:43,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:44,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 351 transitions. [2022-04-28 05:51:44,001 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 351 transitions. Word has length 42 [2022-04-28 05:51:44,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:44,001 INFO L495 AbstractCegarLoop]: Abstraction has 258 states and 351 transitions. [2022-04-28 05:51:44,001 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:44,001 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 351 transitions. [2022-04-28 05:51:44,454 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,455 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 351 transitions. [2022-04-28 05:51:44,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 05:51:44,455 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:44,455 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:44,471 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:44,655 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-28 05:51:44,656 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:44,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:44,656 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 1 times [2022-04-28 05:51:44,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2090777280] [2022-04-28 05:51:44,656 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:44,657 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 2 times [2022-04-28 05:51:44,657 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:44,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1950434359] [2022-04-28 05:51:44,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:44,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:44,668 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:44,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [901990789] [2022-04-28 05:51:44,668 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:44,668 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:44,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:44,669 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:44,674 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-28 05:51:44,719 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:44,719 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:44,720 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:44,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,731 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:48,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {13974#true} call ULTIMATE.init(); {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {13974#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13974#true} {13974#true} #108#return; {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {13974#true} call #t~ret9 := main(); {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {13974#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13974#true} is VALID [2022-04-28 05:51:48,875 INFO L272 TraceCheckUtils]: 6: Hoare triple {13974#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13974#true} {13974#true} #94#return; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L272 TraceCheckUtils]: 11: Hoare triple {13974#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 12: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 14: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13974#true} {13974#true} #96#return; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {13974#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13974#true} is VALID [2022-04-28 05:51:48,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 18: Hoare triple {13974#true} assume !!(#t~post6 < 50);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 19: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 20: Hoare triple {13974#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 21: Hoare triple {13974#true} assume !!(#t~post7 < 50);havoc #t~post7; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 22: Hoare triple {13974#true} assume !(~c~0 >= ~b~0); {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 23: Hoare triple {13974#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 24: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:48,877 INFO L290 TraceCheckUtils]: 25: Hoare triple {13974#true} assume !!(#t~post6 < 50);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:48,878 INFO L290 TraceCheckUtils]: 26: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,878 INFO L290 TraceCheckUtils]: 27: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,878 INFO L290 TraceCheckUtils]: 28: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,879 INFO L290 TraceCheckUtils]: 29: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,883 INFO L290 TraceCheckUtils]: 30: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,884 INFO L290 TraceCheckUtils]: 31: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,884 INFO L272 TraceCheckUtils]: 32: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:48,884 INFO L290 TraceCheckUtils]: 33: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:48,884 INFO L290 TraceCheckUtils]: 34: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:48,884 INFO L290 TraceCheckUtils]: 35: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:48,884 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,885 INFO L272 TraceCheckUtils]: 37: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:48,885 INFO L290 TraceCheckUtils]: 38: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:48,885 INFO L290 TraceCheckUtils]: 39: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:48,885 INFO L290 TraceCheckUtils]: 40: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:48,885 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:48,886 INFO L272 TraceCheckUtils]: 42: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:48,886 INFO L290 TraceCheckUtils]: 43: Hoare triple {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:48,887 INFO L290 TraceCheckUtils]: 44: Hoare triple {14110#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13975#false} is VALID [2022-04-28 05:51:48,887 INFO L290 TraceCheckUtils]: 45: Hoare triple {13975#false} assume !false; {13975#false} is VALID [2022-04-28 05:51:48,887 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 05:51:48,887 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:48,887 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:48,887 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1950434359] [2022-04-28 05:51:48,887 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:48,887 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [901990789] [2022-04-28 05:51:48,887 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [901990789] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:48,887 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:48,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:48,888 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:48,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2090777280] [2022-04-28 05:51:48,888 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2090777280] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:48,888 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:48,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:48,888 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1525933300] [2022-04-28 05:51:48,889 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:48,889 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:48,890 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:48,890 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:48,922 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:48,922 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:48,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:48,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:48,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:48,923 INFO L87 Difference]: Start difference. First operand 258 states and 351 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:49,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:49,891 INFO L93 Difference]: Finished difference Result 332 states and 473 transitions. [2022-04-28 05:51:49,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:49,891 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:49,891 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:49,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:49,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:49,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:49,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:49,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:51:49,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:49,957 INFO L225 Difference]: With dead ends: 332 [2022-04-28 05:51:49,957 INFO L226 Difference]: Without dead ends: 330 [2022-04-28 05:51:49,959 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:49,960 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:49,960 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 153 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:49,961 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2022-04-28 05:51:50,717 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 321. [2022-04-28 05:51:50,717 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:50,718 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:50,718 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:50,719 INFO L87 Difference]: Start difference. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:50,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:50,729 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:50,730 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:50,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:50,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:50,732 INFO L74 IsIncluded]: Start isIncluded. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:50,732 INFO L87 Difference]: Start difference. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:50,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:50,743 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:50,743 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:50,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:50,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:50,745 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:50,745 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:50,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:50,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 462 transitions. [2022-04-28 05:51:50,758 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 462 transitions. Word has length 46 [2022-04-28 05:51:50,759 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:50,759 INFO L495 AbstractCegarLoop]: Abstraction has 321 states and 462 transitions. [2022-04-28 05:51:50,759 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:50,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 321 states and 462 transitions. [2022-04-28 05:51:51,352 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 462 edges. 462 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:51,352 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 462 transitions. [2022-04-28 05:51:51,355 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 05:51:51,355 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:51,355 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:51,372 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-28 05:51:51,559 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:51,559 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:51,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:51,560 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 1 times [2022-04-28 05:51:51,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:51,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [425036477] [2022-04-28 05:51:51,561 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:51,561 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 2 times [2022-04-28 05:51:51,562 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:51,562 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1091393279] [2022-04-28 05:51:51,562 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:51,562 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:51,580 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:51,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [371289453] [2022-04-28 05:51:51,580 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:51,580 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:51,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:51,598 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:51,599 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-28 05:51:51,646 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:51,647 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:51,648 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:51,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:51,666 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:51,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:51,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,935 INFO L290 TraceCheckUtils]: 2: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,935 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16092#(<= ~counter~0 0)} {16084#true} #108#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,936 INFO L272 TraceCheckUtils]: 4: Hoare triple {16092#(<= ~counter~0 0)} call #t~ret9 := main(); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {16092#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,936 INFO L272 TraceCheckUtils]: 6: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,936 INFO L290 TraceCheckUtils]: 7: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #94#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,938 INFO L272 TraceCheckUtils]: 11: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,938 INFO L290 TraceCheckUtils]: 12: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,939 INFO L290 TraceCheckUtils]: 14: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,939 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #96#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,939 INFO L290 TraceCheckUtils]: 16: Hoare triple {16092#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:51,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {16092#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:51,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {16141#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:51,940 INFO L290 TraceCheckUtils]: 19: Hoare triple {16141#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:51,941 INFO L290 TraceCheckUtils]: 20: Hoare triple {16141#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:51,941 INFO L290 TraceCheckUtils]: 21: Hoare triple {16151#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:51,941 INFO L290 TraceCheckUtils]: 22: Hoare triple {16151#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:51,942 INFO L290 TraceCheckUtils]: 23: Hoare triple {16151#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,942 INFO L290 TraceCheckUtils]: 24: Hoare triple {16161#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,943 INFO L272 TraceCheckUtils]: 25: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,943 INFO L290 TraceCheckUtils]: 26: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,955 INFO L290 TraceCheckUtils]: 27: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,956 INFO L290 TraceCheckUtils]: 28: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,957 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #98#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,958 INFO L272 TraceCheckUtils]: 30: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,959 INFO L290 TraceCheckUtils]: 31: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,959 INFO L290 TraceCheckUtils]: 32: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,960 INFO L290 TraceCheckUtils]: 33: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,961 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #100#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,962 INFO L272 TraceCheckUtils]: 35: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,962 INFO L290 TraceCheckUtils]: 36: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,963 INFO L290 TraceCheckUtils]: 37: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,966 INFO L290 TraceCheckUtils]: 38: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,967 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #102#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,968 INFO L272 TraceCheckUtils]: 40: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,968 INFO L290 TraceCheckUtils]: 41: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,969 INFO L290 TraceCheckUtils]: 42: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,969 INFO L290 TraceCheckUtils]: 43: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,969 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #104#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,970 INFO L290 TraceCheckUtils]: 45: Hoare triple {16161#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,970 INFO L290 TraceCheckUtils]: 46: Hoare triple {16161#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:51,971 INFO L290 TraceCheckUtils]: 47: Hoare triple {16161#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:51,971 INFO L290 TraceCheckUtils]: 48: Hoare triple {16234#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:51,972 INFO L290 TraceCheckUtils]: 49: Hoare triple {16234#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:51,972 INFO L290 TraceCheckUtils]: 50: Hoare triple {16234#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:51,972 INFO L290 TraceCheckUtils]: 51: Hoare triple {16234#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16247#(<= |main_#t~post6| 4)} is VALID [2022-04-28 05:51:51,973 INFO L290 TraceCheckUtils]: 52: Hoare triple {16247#(<= |main_#t~post6| 4)} assume !(#t~post6 < 50);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:51,973 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {16085#false} is VALID [2022-04-28 05:51:51,973 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:51,973 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:51,973 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:51,973 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:51,973 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:52,327 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:52,327 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:52,327 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:52,327 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {16085#false} is VALID [2022-04-28 05:51:52,328 INFO L290 TraceCheckUtils]: 52: Hoare triple {16275#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:52,328 INFO L290 TraceCheckUtils]: 51: Hoare triple {16279#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16275#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:51:52,328 INFO L290 TraceCheckUtils]: 50: Hoare triple {16279#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16279#(< ~counter~0 50)} is VALID [2022-04-28 05:51:52,328 INFO L290 TraceCheckUtils]: 49: Hoare triple {16279#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {16279#(< ~counter~0 50)} is VALID [2022-04-28 05:51:52,329 INFO L290 TraceCheckUtils]: 48: Hoare triple {16279#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {16279#(< ~counter~0 50)} is VALID [2022-04-28 05:51:52,329 INFO L290 TraceCheckUtils]: 47: Hoare triple {16292#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16279#(< ~counter~0 50)} is VALID [2022-04-28 05:51:52,330 INFO L290 TraceCheckUtils]: 46: Hoare triple {16292#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,330 INFO L290 TraceCheckUtils]: 45: Hoare triple {16292#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,330 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #104#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,330 INFO L290 TraceCheckUtils]: 43: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,330 INFO L290 TraceCheckUtils]: 42: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L290 TraceCheckUtils]: 41: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L272 TraceCheckUtils]: 40: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #102#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,331 INFO L290 TraceCheckUtils]: 38: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L290 TraceCheckUtils]: 37: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L290 TraceCheckUtils]: 36: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,331 INFO L272 TraceCheckUtils]: 35: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,332 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #100#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,332 INFO L290 TraceCheckUtils]: 33: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,332 INFO L290 TraceCheckUtils]: 32: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,332 INFO L290 TraceCheckUtils]: 31: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,332 INFO L272 TraceCheckUtils]: 30: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,333 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #98#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,333 INFO L290 TraceCheckUtils]: 28: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,333 INFO L290 TraceCheckUtils]: 27: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,333 INFO L290 TraceCheckUtils]: 26: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,333 INFO L272 TraceCheckUtils]: 25: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,333 INFO L290 TraceCheckUtils]: 24: Hoare triple {16292#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,339 INFO L290 TraceCheckUtils]: 23: Hoare triple {16365#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16292#(< ~counter~0 49)} is VALID [2022-04-28 05:51:52,340 INFO L290 TraceCheckUtils]: 22: Hoare triple {16365#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16365#(< ~counter~0 48)} is VALID [2022-04-28 05:51:52,340 INFO L290 TraceCheckUtils]: 21: Hoare triple {16365#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {16365#(< ~counter~0 48)} is VALID [2022-04-28 05:51:52,341 INFO L290 TraceCheckUtils]: 20: Hoare triple {16375#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16365#(< ~counter~0 48)} is VALID [2022-04-28 05:51:52,341 INFO L290 TraceCheckUtils]: 19: Hoare triple {16375#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16375#(< ~counter~0 47)} is VALID [2022-04-28 05:51:52,341 INFO L290 TraceCheckUtils]: 18: Hoare triple {16375#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {16375#(< ~counter~0 47)} is VALID [2022-04-28 05:51:52,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {16385#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16375#(< ~counter~0 47)} is VALID [2022-04-28 05:51:52,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {16385#(< ~counter~0 46)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,343 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16084#true} {16385#(< ~counter~0 46)} #96#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,343 INFO L272 TraceCheckUtils]: 11: Hoare triple {16385#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16084#true} {16385#(< ~counter~0 46)} #94#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:52,344 INFO L290 TraceCheckUtils]: 8: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:52,344 INFO L290 TraceCheckUtils]: 7: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:52,344 INFO L272 TraceCheckUtils]: 6: Hoare triple {16385#(< ~counter~0 46)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:52,344 INFO L290 TraceCheckUtils]: 5: Hoare triple {16385#(< ~counter~0 46)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,344 INFO L272 TraceCheckUtils]: 4: Hoare triple {16385#(< ~counter~0 46)} call #t~ret9 := main(); {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,345 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16385#(< ~counter~0 46)} {16084#true} #108#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,345 INFO L290 TraceCheckUtils]: 2: Hoare triple {16385#(< ~counter~0 46)} assume true; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16385#(< ~counter~0 46)} is VALID [2022-04-28 05:51:52,346 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:52,346 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:52,346 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:52,346 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1091393279] [2022-04-28 05:51:52,346 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:52,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [371289453] [2022-04-28 05:51:52,347 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [371289453] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:52,347 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:52,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:52,347 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:52,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [425036477] [2022-04-28 05:51:52,347 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [425036477] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:52,347 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:52,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:52,347 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1759151947] [2022-04-28 05:51:52,347 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:52,348 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:52,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:52,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:52,390 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:52,390 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:52,390 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:52,391 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:52,391 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:52,391 INFO L87 Difference]: Start difference. First operand 321 states and 462 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:53,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:53,368 INFO L93 Difference]: Finished difference Result 335 states and 475 transitions. [2022-04-28 05:51:53,368 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:53,368 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:53,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:53,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:53,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:53,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:53,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:53,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-28 05:51:53,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:53,474 INFO L225 Difference]: With dead ends: 335 [2022-04-28 05:51:53,474 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 05:51:53,475 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:53,475 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 46 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:53,475 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:53,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 05:51:54,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 324. [2022-04-28 05:51:54,292 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:54,293 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:54,293 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:54,294 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:54,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:54,304 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:54,304 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:54,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:54,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:54,306 INFO L74 IsIncluded]: Start isIncluded. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:54,307 INFO L87 Difference]: Start difference. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:54,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:54,318 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:54,318 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:54,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:54,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:54,319 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:54,319 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:54,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:54,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 324 states to 324 states and 465 transitions. [2022-04-28 05:51:54,338 INFO L78 Accepts]: Start accepts. Automaton has 324 states and 465 transitions. Word has length 57 [2022-04-28 05:51:54,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:54,338 INFO L495 AbstractCegarLoop]: Abstraction has 324 states and 465 transitions. [2022-04-28 05:51:54,338 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:54,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 324 states and 465 transitions. [2022-04-28 05:51:54,938 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 465 edges. 465 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:54,938 INFO L276 IsEmpty]: Start isEmpty. Operand 324 states and 465 transitions. [2022-04-28 05:51:54,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 05:51:54,939 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:54,939 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:54,962 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:55,153 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 05:51:55,154 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:55,154 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:55,154 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-28 05:51:55,154 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:55,154 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [544321761] [2022-04-28 05:51:55,155 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:55,155 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 2 times [2022-04-28 05:51:55,155 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:55,155 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2046989999] [2022-04-28 05:51:55,155 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:55,155 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:55,166 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:55,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1284350409] [2022-04-28 05:51:55,166 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:55,167 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:55,167 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:55,168 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:55,178 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 05:51:55,220 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:55,220 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:55,221 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 05:51:55,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:55,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:56,019 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,020 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:51:56,021 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,021 INFO L290 TraceCheckUtils]: 17: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,021 INFO L290 TraceCheckUtils]: 18: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,022 INFO L290 TraceCheckUtils]: 19: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,022 INFO L290 TraceCheckUtils]: 20: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,023 INFO L290 TraceCheckUtils]: 21: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,023 INFO L290 TraceCheckUtils]: 22: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,024 INFO L290 TraceCheckUtils]: 23: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,024 INFO L290 TraceCheckUtils]: 24: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,024 INFO L272 TraceCheckUtils]: 25: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,024 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:56,025 INFO L290 TraceCheckUtils]: 27: Hoare triple {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:56,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:56,026 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,026 INFO L272 TraceCheckUtils]: 30: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,026 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:56,026 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:56,026 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,027 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,027 INFO L272 TraceCheckUtils]: 35: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,027 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:56,027 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:56,027 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,028 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,028 INFO L272 TraceCheckUtils]: 40: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:56,028 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:56,028 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:56,028 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:56,029 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,029 INFO L290 TraceCheckUtils]: 45: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,030 INFO L290 TraceCheckUtils]: 46: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,030 INFO L290 TraceCheckUtils]: 47: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,031 INFO L290 TraceCheckUtils]: 48: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,031 INFO L290 TraceCheckUtils]: 49: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:56,032 INFO L290 TraceCheckUtils]: 50: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:56,032 INFO L290 TraceCheckUtils]: 51: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:56,032 INFO L290 TraceCheckUtils]: 52: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:56,033 INFO L290 TraceCheckUtils]: 53: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:56,034 INFO L272 TraceCheckUtils]: 54: Hoare triple {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:56,034 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:56,034 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:51:56,034 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:51:56,035 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:56,035 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:08,642 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:52:08,642 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:52:08,643 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:08,644 INFO L272 TraceCheckUtils]: 54: Hoare triple {18613#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:08,644 INFO L290 TraceCheckUtils]: 53: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18613#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:08,645 INFO L290 TraceCheckUtils]: 52: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:52:08,645 INFO L290 TraceCheckUtils]: 51: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:52:08,922 INFO L290 TraceCheckUtils]: 50: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:52:08,923 INFO L290 TraceCheckUtils]: 49: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,923 INFO L290 TraceCheckUtils]: 48: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,924 INFO L290 TraceCheckUtils]: 47: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,976 INFO L290 TraceCheckUtils]: 46: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,976 INFO L290 TraceCheckUtils]: 45: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,977 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,977 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,977 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:52:08,977 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:52:08,977 INFO L272 TraceCheckUtils]: 40: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,978 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,978 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,978 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:52:08,978 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:52:08,978 INFO L272 TraceCheckUtils]: 35: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,979 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,979 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,979 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:52:08,979 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:52:08,979 INFO L272 TraceCheckUtils]: 30: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,980 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,981 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:08,981 INFO L290 TraceCheckUtils]: 27: Hoare triple {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:08,981 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:08,981 INFO L272 TraceCheckUtils]: 25: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,982 INFO L290 TraceCheckUtils]: 24: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,982 INFO L290 TraceCheckUtils]: 23: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,983 INFO L290 TraceCheckUtils]: 22: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:08,984 INFO L290 TraceCheckUtils]: 21: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 50);havoc #t~post7; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,985 INFO L290 TraceCheckUtils]: 19: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,985 INFO L290 TraceCheckUtils]: 18: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,986 INFO L290 TraceCheckUtils]: 17: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:52:08,986 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:52:08,986 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,986 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:52:08,987 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:52:08,988 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:52:08,988 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:08,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2046989999] [2022-04-28 05:52:08,988 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:08,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1284350409] [2022-04-28 05:52:08,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1284350409] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:08,988 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:08,988 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 05:52:08,988 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:08,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [544321761] [2022-04-28 05:52:08,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [544321761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:08,988 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:08,988 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:52:08,988 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [452464334] [2022-04-28 05:52:08,989 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:08,989 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:52:08,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:08,989 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:09,031 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:09,031 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:52:09,031 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:09,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:52:09,032 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:52:09,032 INFO L87 Difference]: Start difference. First operand 324 states and 465 transitions. Second operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:11,581 INFO L93 Difference]: Finished difference Result 384 states and 559 transitions. [2022-04-28 05:52:11,581 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:52:11,581 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:52:11,581 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:11,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:52:11,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:52:11,586 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 149 transitions. [2022-04-28 05:52:11,757 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:11,771 INFO L225 Difference]: With dead ends: 384 [2022-04-28 05:52:11,772 INFO L226 Difference]: Without dead ends: 381 [2022-04-28 05:52:11,772 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=101, Invalid=499, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:52:11,772 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 66 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 541 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 541 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:11,773 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 399 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 541 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:52:11,773 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-28 05:52:12,800 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 377. [2022-04-28 05:52:12,800 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:12,803 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:52:12,804 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:52:12,804 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:52:12,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,833 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:52:12,834 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:52:12,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:12,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:12,836 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:52:12,836 INFO L87 Difference]: Start difference. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:52:12,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,849 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:52:12,849 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:52:12,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:12,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:12,850 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:12,850 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:12,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:52:12,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 551 transitions. [2022-04-28 05:52:12,865 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 551 transitions. Word has length 58 [2022-04-28 05:52:12,865 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:12,865 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 551 transitions. [2022-04-28 05:52:12,866 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:12,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 377 states and 551 transitions. [2022-04-28 05:52:13,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 551 edges. 551 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:13,508 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 551 transitions. [2022-04-28 05:52:13,509 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 05:52:13,509 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:13,509 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 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, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:13,525 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:13,709 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 05:52:13,710 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:13,710 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:13,710 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 1 times [2022-04-28 05:52:13,710 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:13,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2081768732] [2022-04-28 05:52:13,711 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:13,711 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 2 times [2022-04-28 05:52:13,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:13,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1953613774] [2022-04-28 05:52:13,711 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:13,711 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:13,722 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:13,722 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1870311095] [2022-04-28 05:52:13,722 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:13,722 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:13,723 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:13,723 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:13,733 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-28 05:52:13,785 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:13,785 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:13,786 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:52:13,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:13,809 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:14,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:52:14,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,099 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21085#(<= ~counter~0 0)} {21077#true} #108#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,099 INFO L272 TraceCheckUtils]: 4: Hoare triple {21085#(<= ~counter~0 0)} call #t~ret9 := main(); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,099 INFO L290 TraceCheckUtils]: 5: Hoare triple {21085#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,100 INFO L272 TraceCheckUtils]: 6: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,100 INFO L290 TraceCheckUtils]: 8: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,100 INFO L290 TraceCheckUtils]: 9: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,101 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #94#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,101 INFO L272 TraceCheckUtils]: 11: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,101 INFO L290 TraceCheckUtils]: 12: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,102 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #96#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {21085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:14,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {21085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:14,104 INFO L290 TraceCheckUtils]: 18: Hoare triple {21134#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:14,104 INFO L290 TraceCheckUtils]: 19: Hoare triple {21134#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:14,104 INFO L290 TraceCheckUtils]: 20: Hoare triple {21134#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:14,105 INFO L290 TraceCheckUtils]: 21: Hoare triple {21144#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:14,105 INFO L290 TraceCheckUtils]: 22: Hoare triple {21144#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:14,105 INFO L290 TraceCheckUtils]: 23: Hoare triple {21144#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:14,106 INFO L290 TraceCheckUtils]: 24: Hoare triple {21144#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:14,106 INFO L290 TraceCheckUtils]: 25: Hoare triple {21157#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:14,106 INFO L290 TraceCheckUtils]: 26: Hoare triple {21157#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:14,107 INFO L290 TraceCheckUtils]: 27: Hoare triple {21157#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:14,107 INFO L290 TraceCheckUtils]: 28: Hoare triple {21167#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:14,107 INFO L290 TraceCheckUtils]: 29: Hoare triple {21167#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:14,108 INFO L290 TraceCheckUtils]: 30: Hoare triple {21167#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,108 INFO L290 TraceCheckUtils]: 31: Hoare triple {21177#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,108 INFO L272 TraceCheckUtils]: 32: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,109 INFO L290 TraceCheckUtils]: 33: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,109 INFO L290 TraceCheckUtils]: 34: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,109 INFO L290 TraceCheckUtils]: 35: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,110 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #98#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,110 INFO L272 TraceCheckUtils]: 37: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,111 INFO L290 TraceCheckUtils]: 38: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,111 INFO L290 TraceCheckUtils]: 39: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,111 INFO L290 TraceCheckUtils]: 40: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,112 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #100#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,112 INFO L272 TraceCheckUtils]: 42: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,112 INFO L290 TraceCheckUtils]: 43: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,113 INFO L290 TraceCheckUtils]: 44: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,113 INFO L290 TraceCheckUtils]: 45: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,113 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #102#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,114 INFO L272 TraceCheckUtils]: 47: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,114 INFO L290 TraceCheckUtils]: 48: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,114 INFO L290 TraceCheckUtils]: 49: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,115 INFO L290 TraceCheckUtils]: 50: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,115 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #104#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,115 INFO L290 TraceCheckUtils]: 52: Hoare triple {21177#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 53: Hoare triple {21177#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 54: Hoare triple {21177#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21250#(<= |main_#t~post7| 5)} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 55: Hoare triple {21250#(<= |main_#t~post7| 5)} assume !(#t~post7 < 50);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21078#false} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:52:14,116 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 50);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:52:14,116 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {21078#false} is VALID [2022-04-28 05:52:14,117 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:52:14,117 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:52:14,117 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:52:14,117 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:14,117 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 50);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:52:14,442 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21078#false} is VALID [2022-04-28 05:52:14,443 INFO L290 TraceCheckUtils]: 55: Hoare triple {21296#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:52:14,443 INFO L290 TraceCheckUtils]: 54: Hoare triple {21300#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21296#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:52:14,443 INFO L290 TraceCheckUtils]: 53: Hoare triple {21300#(< ~counter~0 50)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,443 INFO L290 TraceCheckUtils]: 52: Hoare triple {21300#(< ~counter~0 50)} assume !(~c~0 >= 2 * ~v~0); {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,444 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #104#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,444 INFO L290 TraceCheckUtils]: 50: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,444 INFO L272 TraceCheckUtils]: 47: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,445 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #102#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,445 INFO L290 TraceCheckUtils]: 45: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,445 INFO L290 TraceCheckUtils]: 44: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,445 INFO L290 TraceCheckUtils]: 43: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,445 INFO L272 TraceCheckUtils]: 42: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,445 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #100#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,445 INFO L290 TraceCheckUtils]: 40: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L290 TraceCheckUtils]: 39: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L290 TraceCheckUtils]: 38: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L272 TraceCheckUtils]: 37: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #98#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,446 INFO L272 TraceCheckUtils]: 32: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,447 INFO L290 TraceCheckUtils]: 31: Hoare triple {21300#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,447 INFO L290 TraceCheckUtils]: 30: Hoare triple {21373#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21300#(< ~counter~0 50)} is VALID [2022-04-28 05:52:14,448 INFO L290 TraceCheckUtils]: 29: Hoare triple {21373#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21373#(< ~counter~0 49)} is VALID [2022-04-28 05:52:14,448 INFO L290 TraceCheckUtils]: 28: Hoare triple {21373#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {21373#(< ~counter~0 49)} is VALID [2022-04-28 05:52:14,448 INFO L290 TraceCheckUtils]: 27: Hoare triple {21383#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21373#(< ~counter~0 49)} is VALID [2022-04-28 05:52:14,449 INFO L290 TraceCheckUtils]: 26: Hoare triple {21383#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21383#(< ~counter~0 48)} is VALID [2022-04-28 05:52:14,449 INFO L290 TraceCheckUtils]: 25: Hoare triple {21383#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {21383#(< ~counter~0 48)} is VALID [2022-04-28 05:52:14,449 INFO L290 TraceCheckUtils]: 24: Hoare triple {21393#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21383#(< ~counter~0 48)} is VALID [2022-04-28 05:52:14,450 INFO L290 TraceCheckUtils]: 23: Hoare triple {21393#(< ~counter~0 47)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21393#(< ~counter~0 47)} is VALID [2022-04-28 05:52:14,450 INFO L290 TraceCheckUtils]: 22: Hoare triple {21393#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {21393#(< ~counter~0 47)} is VALID [2022-04-28 05:52:14,450 INFO L290 TraceCheckUtils]: 21: Hoare triple {21393#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {21393#(< ~counter~0 47)} is VALID [2022-04-28 05:52:14,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {21406#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21393#(< ~counter~0 47)} is VALID [2022-04-28 05:52:14,451 INFO L290 TraceCheckUtils]: 19: Hoare triple {21406#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21406#(< ~counter~0 46)} is VALID [2022-04-28 05:52:14,451 INFO L290 TraceCheckUtils]: 18: Hoare triple {21406#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {21406#(< ~counter~0 46)} is VALID [2022-04-28 05:52:14,452 INFO L290 TraceCheckUtils]: 17: Hoare triple {21416#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21406#(< ~counter~0 46)} is VALID [2022-04-28 05:52:14,452 INFO L290 TraceCheckUtils]: 16: Hoare triple {21416#(< ~counter~0 45)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,452 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21077#true} {21416#(< ~counter~0 45)} #96#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,452 INFO L290 TraceCheckUtils]: 14: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L290 TraceCheckUtils]: 12: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L272 TraceCheckUtils]: 11: Hoare triple {21416#(< ~counter~0 45)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21077#true} {21416#(< ~counter~0 45)} #94#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L290 TraceCheckUtils]: 7: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L272 TraceCheckUtils]: 6: Hoare triple {21416#(< ~counter~0 45)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:52:14,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {21416#(< ~counter~0 45)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {21416#(< ~counter~0 45)} call #t~ret9 := main(); {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21416#(< ~counter~0 45)} {21077#true} #108#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {21416#(< ~counter~0 45)} assume true; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21416#(< ~counter~0 45)} is VALID [2022-04-28 05:52:14,455 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:52:14,455 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:14,455 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:14,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1953613774] [2022-04-28 05:52:14,455 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:14,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1870311095] [2022-04-28 05:52:14,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1870311095] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:14,455 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:14,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:52:14,456 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:14,456 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2081768732] [2022-04-28 05:52:14,456 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2081768732] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:14,456 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:14,456 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:52:14,456 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1312280587] [2022-04-28 05:52:14,456 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:14,456 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:52:14,457 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:14,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:14,492 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:14,492 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:52:14,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:14,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:52:14,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:52:14,493 INFO L87 Difference]: Start difference. First operand 377 states and 551 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:15,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:15,720 INFO L93 Difference]: Finished difference Result 604 states and 873 transitions. [2022-04-28 05:52:15,720 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:52:15,720 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:52:15,720 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:15,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:15,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:52:15,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:15,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:52:15,724 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 158 transitions. [2022-04-28 05:52:15,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:15,880 INFO L225 Difference]: With dead ends: 604 [2022-04-28 05:52:15,880 INFO L226 Difference]: Without dead ends: 440 [2022-04-28 05:52:15,881 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:52:15,882 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 57 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:15,882 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:15,883 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 440 states. [2022-04-28 05:52:16,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 440 to 426. [2022-04-28 05:52:16,753 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:16,753 INFO L82 GeneralOperation]: Start isEquivalent. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:52:16,754 INFO L74 IsIncluded]: Start isIncluded. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:52:16,755 INFO L87 Difference]: Start difference. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:52:16,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:16,770 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:52:16,770 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:52:16,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:16,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:16,772 INFO L74 IsIncluded]: Start isIncluded. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:52:16,773 INFO L87 Difference]: Start difference. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:52:16,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:16,788 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:52:16,788 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:52:16,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:16,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:16,789 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:16,789 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:16,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:52:16,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 426 states to 426 states and 598 transitions. [2022-04-28 05:52:16,806 INFO L78 Accepts]: Start accepts. Automaton has 426 states and 598 transitions. Word has length 63 [2022-04-28 05:52:16,806 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:16,807 INFO L495 AbstractCegarLoop]: Abstraction has 426 states and 598 transitions. [2022-04-28 05:52:16,807 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:16,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 426 states and 598 transitions. [2022-04-28 05:52:17,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 598 edges. 598 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:17,625 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 598 transitions. [2022-04-28 05:52:17,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:52:17,625 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:17,630 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 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, 1, 1, 1, 1] [2022-04-28 05:52:17,655 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:17,831 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-28 05:52:17,831 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:17,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:17,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 3 times [2022-04-28 05:52:17,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:17,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1634145340] [2022-04-28 05:52:17,832 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:17,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 4 times [2022-04-28 05:52:17,833 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:17,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1920166055] [2022-04-28 05:52:17,833 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:17,833 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:17,858 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:17,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1602240143] [2022-04-28 05:52:17,858 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:17,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:17,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:17,866 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:17,868 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-28 05:52:17,922 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:17,922 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:17,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:52:17,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:17,940 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:18,347 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:52:18,348 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,348 INFO L290 TraceCheckUtils]: 2: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,348 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24424#(<= ~counter~0 0)} {24416#true} #108#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {24424#(<= ~counter~0 0)} call #t~ret9 := main(); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {24424#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,349 INFO L272 TraceCheckUtils]: 6: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,351 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #94#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,351 INFO L272 TraceCheckUtils]: 11: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,352 INFO L290 TraceCheckUtils]: 14: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,353 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #96#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,353 INFO L290 TraceCheckUtils]: 16: Hoare triple {24424#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:18,354 INFO L290 TraceCheckUtils]: 17: Hoare triple {24424#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:18,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {24473#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:18,355 INFO L290 TraceCheckUtils]: 19: Hoare triple {24473#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:18,355 INFO L290 TraceCheckUtils]: 20: Hoare triple {24473#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:18,356 INFO L290 TraceCheckUtils]: 21: Hoare triple {24483#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:18,356 INFO L290 TraceCheckUtils]: 22: Hoare triple {24483#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:18,356 INFO L290 TraceCheckUtils]: 23: Hoare triple {24483#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:18,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {24483#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:18,357 INFO L290 TraceCheckUtils]: 25: Hoare triple {24496#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:18,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {24496#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:18,358 INFO L290 TraceCheckUtils]: 27: Hoare triple {24496#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:18,359 INFO L290 TraceCheckUtils]: 28: Hoare triple {24506#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:18,359 INFO L290 TraceCheckUtils]: 29: Hoare triple {24506#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:18,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {24506#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,360 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,361 INFO L272 TraceCheckUtils]: 32: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,361 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,361 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,362 INFO L290 TraceCheckUtils]: 35: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,362 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #98#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,363 INFO L272 TraceCheckUtils]: 37: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,364 INFO L290 TraceCheckUtils]: 39: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,365 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #100#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,365 INFO L272 TraceCheckUtils]: 42: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,366 INFO L290 TraceCheckUtils]: 43: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,366 INFO L290 TraceCheckUtils]: 44: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,366 INFO L290 TraceCheckUtils]: 45: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,367 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #102#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,368 INFO L272 TraceCheckUtils]: 47: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,368 INFO L290 TraceCheckUtils]: 48: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,368 INFO L290 TraceCheckUtils]: 49: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,369 INFO L290 TraceCheckUtils]: 50: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,369 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #104#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,370 INFO L290 TraceCheckUtils]: 52: Hoare triple {24516#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,370 INFO L290 TraceCheckUtils]: 53: Hoare triple {24516#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:18,371 INFO L290 TraceCheckUtils]: 54: Hoare triple {24516#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:18,371 INFO L290 TraceCheckUtils]: 55: Hoare triple {24589#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:18,372 INFO L290 TraceCheckUtils]: 56: Hoare triple {24589#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:18,372 INFO L290 TraceCheckUtils]: 57: Hoare triple {24589#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:18,373 INFO L290 TraceCheckUtils]: 58: Hoare triple {24589#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24602#(<= |main_#t~post6| 6)} is VALID [2022-04-28 05:52:18,373 INFO L290 TraceCheckUtils]: 59: Hoare triple {24602#(<= |main_#t~post6| 6)} assume !(#t~post6 < 50);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:52:18,373 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {24417#false} is VALID [2022-04-28 05:52:18,373 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:52:18,373 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:52:18,373 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:52:18,374 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:18,374 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:18,753 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:52:18,753 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:52:18,753 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:52:18,753 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {24417#false} is VALID [2022-04-28 05:52:18,753 INFO L290 TraceCheckUtils]: 59: Hoare triple {24630#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:52:18,754 INFO L290 TraceCheckUtils]: 58: Hoare triple {24634#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24630#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:52:18,754 INFO L290 TraceCheckUtils]: 57: Hoare triple {24634#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24634#(< ~counter~0 50)} is VALID [2022-04-28 05:52:18,754 INFO L290 TraceCheckUtils]: 56: Hoare triple {24634#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {24634#(< ~counter~0 50)} is VALID [2022-04-28 05:52:18,754 INFO L290 TraceCheckUtils]: 55: Hoare triple {24634#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {24634#(< ~counter~0 50)} is VALID [2022-04-28 05:52:18,755 INFO L290 TraceCheckUtils]: 54: Hoare triple {24647#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24634#(< ~counter~0 50)} is VALID [2022-04-28 05:52:18,756 INFO L290 TraceCheckUtils]: 53: Hoare triple {24647#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,756 INFO L290 TraceCheckUtils]: 52: Hoare triple {24647#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,756 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #104#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,757 INFO L290 TraceCheckUtils]: 50: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,757 INFO L290 TraceCheckUtils]: 49: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,757 INFO L290 TraceCheckUtils]: 48: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,757 INFO L272 TraceCheckUtils]: 47: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,757 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #102#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,757 INFO L290 TraceCheckUtils]: 45: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,757 INFO L290 TraceCheckUtils]: 44: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,758 INFO L290 TraceCheckUtils]: 43: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,758 INFO L272 TraceCheckUtils]: 42: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,758 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #100#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,758 INFO L290 TraceCheckUtils]: 40: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,758 INFO L290 TraceCheckUtils]: 39: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,758 INFO L290 TraceCheckUtils]: 38: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,759 INFO L272 TraceCheckUtils]: 37: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,759 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #98#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,759 INFO L290 TraceCheckUtils]: 35: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,759 INFO L290 TraceCheckUtils]: 34: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,759 INFO L290 TraceCheckUtils]: 33: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,759 INFO L272 TraceCheckUtils]: 32: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,760 INFO L290 TraceCheckUtils]: 31: Hoare triple {24647#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,760 INFO L290 TraceCheckUtils]: 30: Hoare triple {24720#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24647#(< ~counter~0 49)} is VALID [2022-04-28 05:52:18,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {24720#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24720#(< ~counter~0 48)} is VALID [2022-04-28 05:52:18,761 INFO L290 TraceCheckUtils]: 28: Hoare triple {24720#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {24720#(< ~counter~0 48)} is VALID [2022-04-28 05:52:18,761 INFO L290 TraceCheckUtils]: 27: Hoare triple {24730#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24720#(< ~counter~0 48)} is VALID [2022-04-28 05:52:18,762 INFO L290 TraceCheckUtils]: 26: Hoare triple {24730#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24730#(< ~counter~0 47)} is VALID [2022-04-28 05:52:18,762 INFO L290 TraceCheckUtils]: 25: Hoare triple {24730#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {24730#(< ~counter~0 47)} is VALID [2022-04-28 05:52:18,763 INFO L290 TraceCheckUtils]: 24: Hoare triple {24740#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24730#(< ~counter~0 47)} is VALID [2022-04-28 05:52:18,763 INFO L290 TraceCheckUtils]: 23: Hoare triple {24740#(< ~counter~0 46)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24740#(< ~counter~0 46)} is VALID [2022-04-28 05:52:18,763 INFO L290 TraceCheckUtils]: 22: Hoare triple {24740#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {24740#(< ~counter~0 46)} is VALID [2022-04-28 05:52:18,764 INFO L290 TraceCheckUtils]: 21: Hoare triple {24740#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {24740#(< ~counter~0 46)} is VALID [2022-04-28 05:52:18,764 INFO L290 TraceCheckUtils]: 20: Hoare triple {24753#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24740#(< ~counter~0 46)} is VALID [2022-04-28 05:52:18,765 INFO L290 TraceCheckUtils]: 19: Hoare triple {24753#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24753#(< ~counter~0 45)} is VALID [2022-04-28 05:52:18,765 INFO L290 TraceCheckUtils]: 18: Hoare triple {24753#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {24753#(< ~counter~0 45)} is VALID [2022-04-28 05:52:18,766 INFO L290 TraceCheckUtils]: 17: Hoare triple {24763#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24753#(< ~counter~0 45)} is VALID [2022-04-28 05:52:18,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {24763#(< ~counter~0 44)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,766 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24416#true} {24763#(< ~counter~0 44)} #96#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,766 INFO L290 TraceCheckUtils]: 14: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L290 TraceCheckUtils]: 12: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L272 TraceCheckUtils]: 11: Hoare triple {24763#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24416#true} {24763#(< ~counter~0 44)} #94#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,767 INFO L290 TraceCheckUtils]: 9: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L290 TraceCheckUtils]: 8: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L290 TraceCheckUtils]: 7: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:52:18,767 INFO L272 TraceCheckUtils]: 6: Hoare triple {24763#(< ~counter~0 44)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:52:18,768 INFO L290 TraceCheckUtils]: 5: Hoare triple {24763#(< ~counter~0 44)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,768 INFO L272 TraceCheckUtils]: 4: Hoare triple {24763#(< ~counter~0 44)} call #t~ret9 := main(); {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24763#(< ~counter~0 44)} {24416#true} #108#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {24763#(< ~counter~0 44)} assume true; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24763#(< ~counter~0 44)} is VALID [2022-04-28 05:52:18,769 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:52:18,769 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:18,769 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:18,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1920166055] [2022-04-28 05:52:18,770 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:18,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1602240143] [2022-04-28 05:52:18,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1602240143] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:18,770 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:18,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:52:18,770 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:18,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1634145340] [2022-04-28 05:52:18,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1634145340] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:18,771 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:18,771 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:52:18,771 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [255962404] [2022-04-28 05:52:18,771 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:18,771 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), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:52:18,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:18,771 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), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:18,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:18,816 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:52:18,816 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:18,816 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:52:18,816 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:52:18,817 INFO L87 Difference]: Start difference. First operand 426 states and 598 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:20,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:20,501 INFO L93 Difference]: Finished difference Result 531 states and 722 transitions. [2022-04-28 05:52:20,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:52:20,501 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), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:52:20,502 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:20,502 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), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:20,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:52:20,504 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), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:20,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:52:20,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 162 transitions. [2022-04-28 05:52:20,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:20,658 INFO L225 Difference]: With dead ends: 531 [2022-04-28 05:52:20,658 INFO L226 Difference]: Without dead ends: 524 [2022-04-28 05:52:20,658 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=188, Invalid=274, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:52:20,659 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 84 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:20,659 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 325 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:52:20,660 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 524 states. [2022-04-28 05:52:21,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 524 to 503. [2022-04-28 05:52:21,690 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:21,691 INFO L82 GeneralOperation]: Start isEquivalent. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:21,691 INFO L74 IsIncluded]: Start isIncluded. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:21,692 INFO L87 Difference]: Start difference. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:21,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:21,710 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:52:21,710 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:52:21,711 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:21,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:21,713 INFO L74 IsIncluded]: Start isIncluded. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:52:21,713 INFO L87 Difference]: Start difference. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:52:21,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:21,730 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:52:21,730 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:52:21,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:21,732 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:21,732 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:21,732 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:21,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:21,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 503 states to 503 states and 691 transitions. [2022-04-28 05:52:21,754 INFO L78 Accepts]: Start accepts. Automaton has 503 states and 691 transitions. Word has length 64 [2022-04-28 05:52:21,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:21,754 INFO L495 AbstractCegarLoop]: Abstraction has 503 states and 691 transitions. [2022-04-28 05:52:21,754 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:21,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 503 states and 691 transitions. [2022-04-28 05:52:22,685 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 691 edges. 691 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:22,685 INFO L276 IsEmpty]: Start isEmpty. Operand 503 states and 691 transitions. [2022-04-28 05:52:22,686 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:52:22,686 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:22,686 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 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] [2022-04-28 05:52:22,702 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:22,887 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:22,887 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:22,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:22,888 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-28 05:52:22,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:22,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1620485246] [2022-04-28 05:52:22,888 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:22,888 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 2 times [2022-04-28 05:52:22,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:22,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359427034] [2022-04-28 05:52:22,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:22,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:22,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:22,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1177573972] [2022-04-28 05:52:22,901 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:22,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:22,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:22,902 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:22,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-28 05:52:22,948 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:22,948 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:22,949 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 05:52:22,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:22,961 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:23,316 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:52:23,316 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:52:23,318 INFO L290 TraceCheckUtils]: 13: Hoare triple {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:52:23,318 INFO L290 TraceCheckUtils]: 14: Hoare triple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:52:23,319 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} {27941#true} #96#return; {27993#(<= 1 main_~y~0)} is VALID [2022-04-28 05:52:23,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {27993#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,320 INFO L290 TraceCheckUtils]: 17: Hoare triple {27997#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,321 INFO L290 TraceCheckUtils]: 18: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,321 INFO L290 TraceCheckUtils]: 19: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,322 INFO L290 TraceCheckUtils]: 20: Hoare triple {27997#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,322 INFO L290 TraceCheckUtils]: 21: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:52:23,323 INFO L290 TraceCheckUtils]: 22: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,323 INFO L290 TraceCheckUtils]: 23: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,324 INFO L290 TraceCheckUtils]: 24: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,324 INFO L272 TraceCheckUtils]: 25: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,324 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,324 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,324 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,325 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,325 INFO L272 TraceCheckUtils]: 30: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,326 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,326 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,326 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,327 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,327 INFO L272 TraceCheckUtils]: 35: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,327 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,327 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,327 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,328 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,328 INFO L272 TraceCheckUtils]: 40: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,328 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,328 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,328 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,329 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,329 INFO L290 TraceCheckUtils]: 45: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,330 INFO L290 TraceCheckUtils]: 46: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,330 INFO L290 TraceCheckUtils]: 47: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,330 INFO L272 TraceCheckUtils]: 48: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,330 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,330 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,331 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,331 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,331 INFO L272 TraceCheckUtils]: 53: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,332 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,332 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,332 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,332 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,332 INFO L272 TraceCheckUtils]: 58: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,333 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,333 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,333 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,333 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:52:23,334 INFO L272 TraceCheckUtils]: 63: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:23,334 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:23,335 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:52:23,335 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:52:23,335 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 05:52:23,335 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:23,579 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:52:23,580 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:52:23,580 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:23,580 INFO L272 TraceCheckUtils]: 63: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:23,581 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,581 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,581 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,581 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,581 INFO L272 TraceCheckUtils]: 58: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,582 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,582 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,582 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,582 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,582 INFO L272 TraceCheckUtils]: 53: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,583 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,583 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,583 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,583 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,583 INFO L272 TraceCheckUtils]: 48: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,583 INFO L290 TraceCheckUtils]: 47: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,583 INFO L290 TraceCheckUtils]: 46: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,585 INFO L290 TraceCheckUtils]: 45: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,586 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,586 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,586 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,586 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,586 INFO L272 TraceCheckUtils]: 40: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,587 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L272 TraceCheckUtils]: 35: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,587 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,587 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,588 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,588 INFO L272 TraceCheckUtils]: 30: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,588 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,588 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,588 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,588 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,589 INFO L272 TraceCheckUtils]: 25: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,591 INFO L290 TraceCheckUtils]: 24: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {27941#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {27941#true} assume !!(#t~post7 < 50);havoc #t~post7; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {27941#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {27941#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {27941#true} assume !!(#t~post6 < 50);havoc #t~post6; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {27941#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {27941#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27941#true} {27941#true} #96#return; {27941#true} is VALID [2022-04-28 05:52:23,592 INFO L290 TraceCheckUtils]: 14: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:52:23,593 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:52:23,594 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-28 05:52:23,594 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:23,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [359427034] [2022-04-28 05:52:23,594 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:23,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1177573972] [2022-04-28 05:52:23,594 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1177573972] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:52:23,594 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:52:23,594 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 05:52:23,594 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:23,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1620485246] [2022-04-28 05:52:23,595 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1620485246] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:23,595 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:23,595 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:52:23,595 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1832076219] [2022-04-28 05:52:23,595 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:23,595 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-28 05:52:23,595 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:23,595 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:23,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:23,624 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:52:23,624 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:23,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:52:23,624 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:52:23,624 INFO L87 Difference]: Start difference. First operand 503 states and 691 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:24,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:24,932 INFO L93 Difference]: Finished difference Result 517 states and 704 transitions. [2022-04-28 05:52:24,933 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:52:24,933 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-28 05:52:24,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:24,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:24,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:52:24,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:24,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:52:24,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-28 05:52:24,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:25,001 INFO L225 Difference]: With dead ends: 517 [2022-04-28 05:52:25,001 INFO L226 Difference]: Without dead ends: 515 [2022-04-28 05:52:25,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:52:25,002 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 12 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:25,002 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 144 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:52:25,003 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 515 states. [2022-04-28 05:52:26,058 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 515 to 511. [2022-04-28 05:52:26,058 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:26,059 INFO L82 GeneralOperation]: Start isEquivalent. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:26,060 INFO L74 IsIncluded]: Start isIncluded. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:26,061 INFO L87 Difference]: Start difference. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:26,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:26,077 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:52:26,078 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:52:26,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:26,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:26,080 INFO L74 IsIncluded]: Start isIncluded. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:52:26,081 INFO L87 Difference]: Start difference. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:52:26,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:26,096 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:52:26,097 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:52:26,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:26,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:26,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:26,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:26,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:26,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 511 states to 511 states and 695 transitions. [2022-04-28 05:52:26,119 INFO L78 Accepts]: Start accepts. Automaton has 511 states and 695 transitions. Word has length 67 [2022-04-28 05:52:26,119 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:26,119 INFO L495 AbstractCegarLoop]: Abstraction has 511 states and 695 transitions. [2022-04-28 05:52:26,119 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:26,119 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 511 states and 695 transitions. [2022-04-28 05:52:27,171 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 695 edges. 695 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:27,171 INFO L276 IsEmpty]: Start isEmpty. Operand 511 states and 695 transitions. [2022-04-28 05:52:27,172 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:52:27,172 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:27,172 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 3, 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, 1, 1, 1] [2022-04-28 05:52:27,198 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:27,387 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:27,387 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:27,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:27,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 3 times [2022-04-28 05:52:27,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:27,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1633583563] [2022-04-28 05:52:27,388 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:27,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 4 times [2022-04-28 05:52:27,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:27,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1838348549] [2022-04-28 05:52:27,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:27,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:27,407 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:27,408 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1943982870] [2022-04-28 05:52:27,408 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:27,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:27,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:27,411 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:27,415 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-28 05:52:27,461 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:27,461 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:27,462 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:52:27,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:27,475 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:27,753 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:52:27,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 50);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 50);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:52:27,755 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:27,756 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,756 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,757 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,757 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,758 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,758 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,759 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,759 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 50);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,759 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,759 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,759 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,759 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,760 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,760 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,760 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,760 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,760 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,761 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,761 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,761 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,761 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,761 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,762 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,762 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,762 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,762 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,763 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,763 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,764 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,764 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,764 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,765 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,765 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,766 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,766 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,766 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:52:27,767 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {31442#false} is VALID [2022-04-28 05:52:27,767 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:52:27,767 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:52:27,767 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:52:27,767 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:27,767 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:27,981 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:52:27,981 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:52:27,981 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:52:27,981 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {31442#false} is VALID [2022-04-28 05:52:27,982 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:52:27,982 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,982 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,983 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:52:27,983 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,983 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,983 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,984 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:52:27,985 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,985 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,985 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,985 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,985 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,985 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,986 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,986 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,986 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,986 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,986 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,987 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,987 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,987 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,987 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,987 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,987 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,988 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,988 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,988 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,988 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,988 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 50);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,988 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,989 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:52:27,989 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,991 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,992 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:52:27,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 50);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 50);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,993 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:52:27,994 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:27,994 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:27,995 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1838348549] [2022-04-28 05:52:27,995 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:27,995 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1943982870] [2022-04-28 05:52:27,995 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1943982870] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:27,995 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:27,995 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:52:27,995 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:27,995 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1633583563] [2022-04-28 05:52:27,995 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1633583563] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:27,995 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:27,995 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:52:27,995 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [910531412] [2022-04-28 05:52:27,995 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:27,996 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:52:27,996 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:27,996 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:28,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:28,034 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:52:28,034 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:28,034 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:52:28,034 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:52:28,034 INFO L87 Difference]: Start difference. First operand 511 states and 695 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:31,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:31,499 INFO L93 Difference]: Finished difference Result 857 states and 1271 transitions. [2022-04-28 05:52:31,499 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:52:31,499 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:52:31,499 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:31,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:31,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:52:31,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:31,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:52:31,505 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 227 transitions. [2022-04-28 05:52:31,696 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:31,739 INFO L225 Difference]: With dead ends: 857 [2022-04-28 05:52:31,739 INFO L226 Difference]: Without dead ends: 850 [2022-04-28 05:52:31,740 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=107, Invalid=313, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:52:31,740 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 81 mSDsluCounter, 334 mSDsCounter, 0 mSdLazyCounter, 401 mSolverCounterSat, 91 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 454 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 91 IncrementalHoareTripleChecker+Valid, 401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:31,740 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 454 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [91 Valid, 401 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 05:52:31,741 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 850 states. [2022-04-28 05:52:32,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 850 to 567. [2022-04-28 05:52:32,999 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:33,000 INFO L82 GeneralOperation]: Start isEquivalent. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:33,000 INFO L74 IsIncluded]: Start isIncluded. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:33,001 INFO L87 Difference]: Start difference. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:33,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:33,047 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:52:33,048 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:52:33,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:33,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:33,051 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:52:33,052 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:52:33,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:33,094 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:52:33,094 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:52:33,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:33,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:33,096 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:33,096 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:33,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:33,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 783 transitions. [2022-04-28 05:52:33,121 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 783 transitions. Word has length 65 [2022-04-28 05:52:33,121 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:33,121 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 783 transitions. [2022-04-28 05:52:33,121 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:33,122 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 783 transitions. [2022-04-28 05:52:34,363 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 783 edges. 783 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:34,364 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 783 transitions. [2022-04-28 05:52:34,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:52:34,364 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:34,364 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 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, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:34,380 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2022-04-28 05:52:34,565 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 05:52:34,565 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:34,565 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:34,565 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 1 times [2022-04-28 05:52:34,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:34,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [245033665] [2022-04-28 05:52:34,566 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:34,566 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 2 times [2022-04-28 05:52:34,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:34,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1634164135] [2022-04-28 05:52:34,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:34,566 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:34,579 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:34,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2119595324] [2022-04-28 05:52:34,579 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:34,580 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:34,580 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:34,581 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:34,608 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 05:52:34,643 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:34,643 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:34,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:52:34,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:34,658 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:34,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:52:34,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,935 INFO L290 TraceCheckUtils]: 2: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,935 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36426#(<= ~counter~0 0)} {36418#true} #108#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,935 INFO L272 TraceCheckUtils]: 4: Hoare triple {36426#(<= ~counter~0 0)} call #t~ret9 := main(); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {36426#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,936 INFO L272 TraceCheckUtils]: 6: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,936 INFO L290 TraceCheckUtils]: 7: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #94#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,938 INFO L272 TraceCheckUtils]: 11: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,938 INFO L290 TraceCheckUtils]: 12: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,939 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #96#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,939 INFO L290 TraceCheckUtils]: 16: Hoare triple {36426#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:34,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {36426#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:34,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {36475#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:34,940 INFO L290 TraceCheckUtils]: 19: Hoare triple {36475#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:34,941 INFO L290 TraceCheckUtils]: 20: Hoare triple {36475#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:34,941 INFO L290 TraceCheckUtils]: 21: Hoare triple {36485#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:34,941 INFO L290 TraceCheckUtils]: 22: Hoare triple {36485#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:34,942 INFO L290 TraceCheckUtils]: 23: Hoare triple {36485#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:34,942 INFO L290 TraceCheckUtils]: 24: Hoare triple {36485#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:34,942 INFO L290 TraceCheckUtils]: 25: Hoare triple {36498#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:34,943 INFO L290 TraceCheckUtils]: 26: Hoare triple {36498#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:34,943 INFO L290 TraceCheckUtils]: 27: Hoare triple {36498#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:34,943 INFO L290 TraceCheckUtils]: 28: Hoare triple {36508#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:34,944 INFO L290 TraceCheckUtils]: 29: Hoare triple {36508#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:34,944 INFO L290 TraceCheckUtils]: 30: Hoare triple {36508#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,945 INFO L290 TraceCheckUtils]: 31: Hoare triple {36518#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,945 INFO L272 TraceCheckUtils]: 32: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,945 INFO L290 TraceCheckUtils]: 33: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,946 INFO L290 TraceCheckUtils]: 34: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,946 INFO L290 TraceCheckUtils]: 35: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,946 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #98#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,947 INFO L272 TraceCheckUtils]: 37: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,947 INFO L290 TraceCheckUtils]: 38: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,947 INFO L290 TraceCheckUtils]: 39: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,948 INFO L290 TraceCheckUtils]: 40: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,948 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #100#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,949 INFO L272 TraceCheckUtils]: 42: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,949 INFO L290 TraceCheckUtils]: 43: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,949 INFO L290 TraceCheckUtils]: 44: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,949 INFO L290 TraceCheckUtils]: 45: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,950 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #102#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,950 INFO L272 TraceCheckUtils]: 47: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,951 INFO L290 TraceCheckUtils]: 48: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,951 INFO L290 TraceCheckUtils]: 49: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,951 INFO L290 TraceCheckUtils]: 50: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,952 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #104#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,952 INFO L290 TraceCheckUtils]: 52: Hoare triple {36518#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:34,952 INFO L290 TraceCheckUtils]: 53: Hoare triple {36518#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36588#(<= |main_#t~post8| 5)} is VALID [2022-04-28 05:52:34,952 INFO L290 TraceCheckUtils]: 54: Hoare triple {36588#(<= |main_#t~post8| 5)} assume !(#t~post8 < 50);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 50);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 50);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:52:34,953 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:34,953 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:35,268 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 50);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 50);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:52:35,269 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:52:35,271 INFO L290 TraceCheckUtils]: 54: Hoare triple {36652#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:52:35,272 INFO L290 TraceCheckUtils]: 53: Hoare triple {36656#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36652#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:52:35,272 INFO L290 TraceCheckUtils]: 52: Hoare triple {36656#(< ~counter~0 50)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,273 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #104#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,273 INFO L290 TraceCheckUtils]: 50: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,273 INFO L290 TraceCheckUtils]: 49: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,273 INFO L290 TraceCheckUtils]: 48: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,273 INFO L272 TraceCheckUtils]: 47: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,273 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #102#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,274 INFO L290 TraceCheckUtils]: 45: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,274 INFO L290 TraceCheckUtils]: 44: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,274 INFO L290 TraceCheckUtils]: 43: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,274 INFO L272 TraceCheckUtils]: 42: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,275 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #100#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,275 INFO L290 TraceCheckUtils]: 40: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,275 INFO L290 TraceCheckUtils]: 39: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,275 INFO L290 TraceCheckUtils]: 38: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,275 INFO L272 TraceCheckUtils]: 37: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,276 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #98#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,279 INFO L290 TraceCheckUtils]: 33: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,279 INFO L272 TraceCheckUtils]: 32: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,279 INFO L290 TraceCheckUtils]: 31: Hoare triple {36656#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,280 INFO L290 TraceCheckUtils]: 30: Hoare triple {36726#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36656#(< ~counter~0 50)} is VALID [2022-04-28 05:52:35,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {36726#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36726#(< ~counter~0 49)} is VALID [2022-04-28 05:52:35,281 INFO L290 TraceCheckUtils]: 28: Hoare triple {36726#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {36726#(< ~counter~0 49)} is VALID [2022-04-28 05:52:35,281 INFO L290 TraceCheckUtils]: 27: Hoare triple {36736#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36726#(< ~counter~0 49)} is VALID [2022-04-28 05:52:35,281 INFO L290 TraceCheckUtils]: 26: Hoare triple {36736#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36736#(< ~counter~0 48)} is VALID [2022-04-28 05:52:35,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {36736#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {36736#(< ~counter~0 48)} is VALID [2022-04-28 05:52:35,282 INFO L290 TraceCheckUtils]: 24: Hoare triple {36746#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36736#(< ~counter~0 48)} is VALID [2022-04-28 05:52:35,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {36746#(< ~counter~0 47)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36746#(< ~counter~0 47)} is VALID [2022-04-28 05:52:35,283 INFO L290 TraceCheckUtils]: 22: Hoare triple {36746#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {36746#(< ~counter~0 47)} is VALID [2022-04-28 05:52:35,283 INFO L290 TraceCheckUtils]: 21: Hoare triple {36746#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {36746#(< ~counter~0 47)} is VALID [2022-04-28 05:52:35,284 INFO L290 TraceCheckUtils]: 20: Hoare triple {36759#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36746#(< ~counter~0 47)} is VALID [2022-04-28 05:52:35,284 INFO L290 TraceCheckUtils]: 19: Hoare triple {36759#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36759#(< ~counter~0 46)} is VALID [2022-04-28 05:52:35,284 INFO L290 TraceCheckUtils]: 18: Hoare triple {36759#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {36759#(< ~counter~0 46)} is VALID [2022-04-28 05:52:35,285 INFO L290 TraceCheckUtils]: 17: Hoare triple {36769#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36759#(< ~counter~0 46)} is VALID [2022-04-28 05:52:35,285 INFO L290 TraceCheckUtils]: 16: Hoare triple {36769#(< ~counter~0 45)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,285 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36418#true} {36769#(< ~counter~0 45)} #96#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,285 INFO L290 TraceCheckUtils]: 14: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,285 INFO L290 TraceCheckUtils]: 13: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,285 INFO L290 TraceCheckUtils]: 12: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L272 TraceCheckUtils]: 11: Hoare triple {36769#(< ~counter~0 45)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36418#true} {36769#(< ~counter~0 45)} #94#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,286 INFO L290 TraceCheckUtils]: 9: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L290 TraceCheckUtils]: 8: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L290 TraceCheckUtils]: 7: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L272 TraceCheckUtils]: 6: Hoare triple {36769#(< ~counter~0 45)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:52:35,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {36769#(< ~counter~0 45)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,287 INFO L272 TraceCheckUtils]: 4: Hoare triple {36769#(< ~counter~0 45)} call #t~ret9 := main(); {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,287 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36769#(< ~counter~0 45)} {36418#true} #108#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {36769#(< ~counter~0 45)} assume true; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36769#(< ~counter~0 45)} is VALID [2022-04-28 05:52:35,288 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:52:35,288 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:35,288 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:35,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1634164135] [2022-04-28 05:52:35,288 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:35,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2119595324] [2022-04-28 05:52:35,288 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2119595324] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:35,288 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:35,288 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:52:35,289 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:35,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [245033665] [2022-04-28 05:52:35,289 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [245033665] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:35,289 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:35,289 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:52:35,289 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077436171] [2022-04-28 05:52:35,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:35,289 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:52:35,289 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:35,290 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:35,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:35,336 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:52:35,336 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:35,336 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:52:35,337 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:52:35,337 INFO L87 Difference]: Start difference. First operand 567 states and 783 transitions. Second operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:36,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:36,923 INFO L93 Difference]: Finished difference Result 839 states and 1203 transitions. [2022-04-28 05:52:36,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:52:36,923 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:52:36,923 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:36,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:36,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:52:36,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:36,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:52:36,926 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 153 transitions. [2022-04-28 05:52:37,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:37,082 INFO L225 Difference]: With dead ends: 839 [2022-04-28 05:52:37,082 INFO L226 Difference]: Without dead ends: 567 [2022-04-28 05:52:37,084 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:52:37,084 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 77 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:37,084 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:37,085 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 567 states. [2022-04-28 05:52:38,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 567 to 567. [2022-04-28 05:52:38,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:38,447 INFO L82 GeneralOperation]: Start isEquivalent. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:38,447 INFO L74 IsIncluded]: Start isIncluded. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:38,448 INFO L87 Difference]: Start difference. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:38,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:38,466 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:52:38,466 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:52:38,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:38,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:38,468 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:52:38,469 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:52:38,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:38,487 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:52:38,487 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:52:38,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:38,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:38,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:38,488 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:38,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:52:38,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 779 transitions. [2022-04-28 05:52:38,512 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 779 transitions. Word has length 65 [2022-04-28 05:52:38,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:38,512 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 779 transitions. [2022-04-28 05:52:38,512 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:38,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 779 transitions. [2022-04-28 05:52:39,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:39,612 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:52:39,613 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:52:39,613 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:39,613 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 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, 1, 1, 1, 1] [2022-04-28 05:52:39,629 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:39,815 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-28 05:52:39,815 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:39,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:39,816 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 1 times [2022-04-28 05:52:39,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:39,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [838083420] [2022-04-28 05:52:39,816 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:39,816 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 2 times [2022-04-28 05:52:39,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:39,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [795832803] [2022-04-28 05:52:39,817 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:39,817 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:39,833 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:39,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1386751926] [2022-04-28 05:52:39,833 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:39,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:39,833 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:39,834 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:39,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-28 05:52:39,887 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:39,888 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:39,888 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:52:39,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:39,901 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:40,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {40775#true} call ULTIMATE.init(); {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {40775#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40775#true} {40775#true} #108#return; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {40775#true} call #t~ret9 := main(); {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {40775#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L272 TraceCheckUtils]: 6: Hoare triple {40775#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 7: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40775#true} {40775#true} #94#return; {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L272 TraceCheckUtils]: 11: Hoare triple {40775#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40775#true} {40775#true} #96#return; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {40775#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 17: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {40775#true} assume !!(#t~post6 < 50);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 21: Hoare triple {40775#true} assume !!(#t~post7 < 50);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 22: Hoare triple {40775#true} assume !(~c~0 >= ~b~0); {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 23: Hoare triple {40775#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 24: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:52:40,082 INFO L290 TraceCheckUtils]: 25: Hoare triple {40775#true} assume !!(#t~post6 < 50);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:52:40,083 INFO L290 TraceCheckUtils]: 26: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:52:40,083 INFO L290 TraceCheckUtils]: 27: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:52:40,083 INFO L290 TraceCheckUtils]: 28: Hoare triple {40775#true} assume !!(#t~post7 < 50);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:52:40,083 INFO L290 TraceCheckUtils]: 29: Hoare triple {40775#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,083 INFO L290 TraceCheckUtils]: 30: Hoare triple {40867#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,084 INFO L290 TraceCheckUtils]: 31: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 50);havoc #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,084 INFO L272 TraceCheckUtils]: 32: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,084 INFO L290 TraceCheckUtils]: 33: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,084 INFO L290 TraceCheckUtils]: 34: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,084 INFO L290 TraceCheckUtils]: 35: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,085 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #98#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,085 INFO L272 TraceCheckUtils]: 37: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,085 INFO L290 TraceCheckUtils]: 38: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,085 INFO L290 TraceCheckUtils]: 39: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,085 INFO L290 TraceCheckUtils]: 40: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,086 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #100#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,086 INFO L272 TraceCheckUtils]: 42: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,086 INFO L290 TraceCheckUtils]: 43: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,086 INFO L290 TraceCheckUtils]: 44: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,086 INFO L290 TraceCheckUtils]: 45: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,087 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #102#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,087 INFO L272 TraceCheckUtils]: 47: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:52:40,087 INFO L290 TraceCheckUtils]: 48: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:52:40,087 INFO L290 TraceCheckUtils]: 49: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:52:40,087 INFO L290 TraceCheckUtils]: 50: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:52:40,088 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #104#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:52:40,088 INFO L290 TraceCheckUtils]: 52: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 05:52:40,089 INFO L290 TraceCheckUtils]: 53: Hoare triple {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:52:40,089 INFO L290 TraceCheckUtils]: 54: Hoare triple {40941#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 55: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 56: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 57: Hoare triple {40776#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 58: Hoare triple {40776#false} assume !(#t~post8 < 50);havoc #t~post8; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 59: Hoare triple {40776#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 60: Hoare triple {40776#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 61: Hoare triple {40776#false} assume !(#t~post7 < 50);havoc #t~post7; {40776#false} is VALID [2022-04-28 05:52:40,090 INFO L290 TraceCheckUtils]: 62: Hoare triple {40776#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L290 TraceCheckUtils]: 63: Hoare triple {40776#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L290 TraceCheckUtils]: 64: Hoare triple {40776#false} assume !(#t~post6 < 50);havoc #t~post6; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L272 TraceCheckUtils]: 65: Hoare triple {40776#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L290 TraceCheckUtils]: 66: Hoare triple {40776#false} ~cond := #in~cond; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L290 TraceCheckUtils]: 67: Hoare triple {40776#false} assume 0 == ~cond; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L290 TraceCheckUtils]: 68: Hoare triple {40776#false} assume !false; {40776#false} is VALID [2022-04-28 05:52:40,091 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2022-04-28 05:52:40,091 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:52:40,091 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:40,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [795832803] [2022-04-28 05:52:40,092 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:40,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1386751926] [2022-04-28 05:52:40,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1386751926] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:40,092 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:40,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:52:40,092 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:40,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [838083420] [2022-04-28 05:52:40,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [838083420] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:40,092 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:40,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:52:40,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1407215939] [2022-04-28 05:52:40,092 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:40,093 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:52:40,093 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:40,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:40,139 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:40,139 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:52:40,139 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:40,140 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:52:40,140 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:52:40,140 INFO L87 Difference]: Start difference. First operand 567 states and 779 transitions. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:41,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:41,922 INFO L93 Difference]: Finished difference Result 980 states and 1387 transitions. [2022-04-28 05:52:41,922 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:52:41,922 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:52:41,922 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:41,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:41,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:52:41,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:41,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:52:41,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-28 05:52:42,000 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:42,018 INFO L225 Difference]: With dead ends: 980 [2022-04-28 05:52:42,018 INFO L226 Difference]: Without dead ends: 624 [2022-04-28 05:52:42,019 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 66 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:52:42,019 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 11 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:42,020 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 121 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:52:42,020 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states. [2022-04-28 05:52:43,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 568. [2022-04-28 05:52:43,411 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:43,412 INFO L82 GeneralOperation]: Start isEquivalent. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:43,412 INFO L74 IsIncluded]: Start isIncluded. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:43,413 INFO L87 Difference]: Start difference. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:43,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:43,433 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:43,433 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:43,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:43,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:43,435 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:43,436 INFO L87 Difference]: Start difference. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:43,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:43,456 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:43,456 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:43,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:43,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:43,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:43,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:43,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:43,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 779 transitions. [2022-04-28 05:52:43,484 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 779 transitions. Word has length 69 [2022-04-28 05:52:43,484 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:43,485 INFO L495 AbstractCegarLoop]: Abstraction has 568 states and 779 transitions. [2022-04-28 05:52:43,485 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:43,485 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 568 states and 779 transitions. [2022-04-28 05:52:44,663 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:44,663 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 779 transitions. [2022-04-28 05:52:44,664 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:52:44,664 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:44,664 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 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, 1, 1, 1, 1] [2022-04-28 05:52:44,689 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:44,886 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:44,887 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:44,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:44,887 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 3 times [2022-04-28 05:52:44,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:44,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1137866859] [2022-04-28 05:52:44,887 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:44,888 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 4 times [2022-04-28 05:52:44,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:44,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970860157] [2022-04-28 05:52:44,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:44,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:44,898 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:44,898 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [921849553] [2022-04-28 05:52:44,898 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:44,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:44,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:44,900 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:44,904 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-28 05:52:44,954 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:44,954 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:44,955 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:52:44,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:44,973 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:45,274 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:45,275 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,275 INFO L290 TraceCheckUtils]: 2: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,276 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45341#(<= ~counter~0 0)} {45333#true} #108#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,276 INFO L272 TraceCheckUtils]: 4: Hoare triple {45341#(<= ~counter~0 0)} call #t~ret9 := main(); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {45341#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,277 INFO L272 TraceCheckUtils]: 6: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,277 INFO L290 TraceCheckUtils]: 7: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,277 INFO L290 TraceCheckUtils]: 8: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,277 INFO L290 TraceCheckUtils]: 9: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,278 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #94#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,278 INFO L272 TraceCheckUtils]: 11: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,278 INFO L290 TraceCheckUtils]: 12: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,279 INFO L290 TraceCheckUtils]: 13: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,279 INFO L290 TraceCheckUtils]: 14: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,279 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #96#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,279 INFO L290 TraceCheckUtils]: 16: Hoare triple {45341#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:45,280 INFO L290 TraceCheckUtils]: 17: Hoare triple {45341#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:45,281 INFO L290 TraceCheckUtils]: 18: Hoare triple {45390#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:45,281 INFO L290 TraceCheckUtils]: 19: Hoare triple {45390#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:45,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {45390#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:45,282 INFO L290 TraceCheckUtils]: 21: Hoare triple {45400#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:45,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {45400#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:45,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {45400#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,283 INFO L290 TraceCheckUtils]: 24: Hoare triple {45410#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,283 INFO L272 TraceCheckUtils]: 25: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,284 INFO L290 TraceCheckUtils]: 26: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,284 INFO L290 TraceCheckUtils]: 27: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,284 INFO L290 TraceCheckUtils]: 28: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,285 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #98#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,285 INFO L272 TraceCheckUtils]: 30: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,286 INFO L290 TraceCheckUtils]: 32: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,286 INFO L290 TraceCheckUtils]: 33: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,286 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #100#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,287 INFO L272 TraceCheckUtils]: 35: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,287 INFO L290 TraceCheckUtils]: 36: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,287 INFO L290 TraceCheckUtils]: 37: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,288 INFO L290 TraceCheckUtils]: 38: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,288 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #102#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,288 INFO L272 TraceCheckUtils]: 40: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,289 INFO L290 TraceCheckUtils]: 41: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,289 INFO L290 TraceCheckUtils]: 42: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,289 INFO L290 TraceCheckUtils]: 43: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,290 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #104#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,290 INFO L290 TraceCheckUtils]: 45: Hoare triple {45410#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,290 INFO L290 TraceCheckUtils]: 46: Hoare triple {45410#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:45,291 INFO L290 TraceCheckUtils]: 47: Hoare triple {45410#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:45,291 INFO L290 TraceCheckUtils]: 48: Hoare triple {45483#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:45,291 INFO L290 TraceCheckUtils]: 49: Hoare triple {45483#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:45,291 INFO L290 TraceCheckUtils]: 50: Hoare triple {45483#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:45,292 INFO L290 TraceCheckUtils]: 51: Hoare triple {45483#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:45,292 INFO L290 TraceCheckUtils]: 52: Hoare triple {45496#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:45,292 INFO L290 TraceCheckUtils]: 53: Hoare triple {45496#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:45,293 INFO L290 TraceCheckUtils]: 54: Hoare triple {45496#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:45,293 INFO L290 TraceCheckUtils]: 55: Hoare triple {45506#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 56: Hoare triple {45506#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 57: Hoare triple {45506#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45516#(<= |main_#t~post8| 6)} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 58: Hoare triple {45516#(<= |main_#t~post8| 6)} assume !(#t~post8 < 50);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 50);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:45,294 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 50);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:45,295 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:45,295 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:45,668 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:45,668 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:45,668 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:45,668 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 50);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 50);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 58: Hoare triple {45580#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:45,669 INFO L290 TraceCheckUtils]: 57: Hoare triple {45584#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45580#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:52:45,670 INFO L290 TraceCheckUtils]: 56: Hoare triple {45584#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45584#(< ~counter~0 50)} is VALID [2022-04-28 05:52:45,670 INFO L290 TraceCheckUtils]: 55: Hoare triple {45584#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {45584#(< ~counter~0 50)} is VALID [2022-04-28 05:52:45,671 INFO L290 TraceCheckUtils]: 54: Hoare triple {45594#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45584#(< ~counter~0 50)} is VALID [2022-04-28 05:52:45,671 INFO L290 TraceCheckUtils]: 53: Hoare triple {45594#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45594#(< ~counter~0 49)} is VALID [2022-04-28 05:52:45,671 INFO L290 TraceCheckUtils]: 52: Hoare triple {45594#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {45594#(< ~counter~0 49)} is VALID [2022-04-28 05:52:45,672 INFO L290 TraceCheckUtils]: 51: Hoare triple {45604#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45594#(< ~counter~0 49)} is VALID [2022-04-28 05:52:45,672 INFO L290 TraceCheckUtils]: 50: Hoare triple {45604#(< ~counter~0 48)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45604#(< ~counter~0 48)} is VALID [2022-04-28 05:52:45,672 INFO L290 TraceCheckUtils]: 49: Hoare triple {45604#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {45604#(< ~counter~0 48)} is VALID [2022-04-28 05:52:45,673 INFO L290 TraceCheckUtils]: 48: Hoare triple {45604#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {45604#(< ~counter~0 48)} is VALID [2022-04-28 05:52:45,673 INFO L290 TraceCheckUtils]: 47: Hoare triple {45617#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45604#(< ~counter~0 48)} is VALID [2022-04-28 05:52:45,673 INFO L290 TraceCheckUtils]: 46: Hoare triple {45617#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,674 INFO L290 TraceCheckUtils]: 45: Hoare triple {45617#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,674 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #104#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,674 INFO L290 TraceCheckUtils]: 43: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,674 INFO L290 TraceCheckUtils]: 42: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,674 INFO L290 TraceCheckUtils]: 41: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,674 INFO L272 TraceCheckUtils]: 40: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,675 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #102#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,675 INFO L290 TraceCheckUtils]: 38: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,675 INFO L290 TraceCheckUtils]: 37: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,675 INFO L290 TraceCheckUtils]: 36: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,675 INFO L272 TraceCheckUtils]: 35: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #100#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,676 INFO L290 TraceCheckUtils]: 33: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L290 TraceCheckUtils]: 32: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L290 TraceCheckUtils]: 31: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L272 TraceCheckUtils]: 30: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #98#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,677 INFO L290 TraceCheckUtils]: 26: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,677 INFO L272 TraceCheckUtils]: 25: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,677 INFO L290 TraceCheckUtils]: 24: Hoare triple {45617#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,677 INFO L290 TraceCheckUtils]: 23: Hoare triple {45690#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45617#(< ~counter~0 47)} is VALID [2022-04-28 05:52:45,678 INFO L290 TraceCheckUtils]: 22: Hoare triple {45690#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45690#(< ~counter~0 46)} is VALID [2022-04-28 05:52:45,678 INFO L290 TraceCheckUtils]: 21: Hoare triple {45690#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {45690#(< ~counter~0 46)} is VALID [2022-04-28 05:52:45,678 INFO L290 TraceCheckUtils]: 20: Hoare triple {45700#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45690#(< ~counter~0 46)} is VALID [2022-04-28 05:52:45,679 INFO L290 TraceCheckUtils]: 19: Hoare triple {45700#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45700#(< ~counter~0 45)} is VALID [2022-04-28 05:52:45,679 INFO L290 TraceCheckUtils]: 18: Hoare triple {45700#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {45700#(< ~counter~0 45)} is VALID [2022-04-28 05:52:45,680 INFO L290 TraceCheckUtils]: 17: Hoare triple {45710#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45700#(< ~counter~0 45)} is VALID [2022-04-28 05:52:45,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {45710#(< ~counter~0 44)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,680 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45333#true} {45710#(< ~counter~0 44)} #96#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,680 INFO L290 TraceCheckUtils]: 14: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,680 INFO L290 TraceCheckUtils]: 13: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,680 INFO L290 TraceCheckUtils]: 12: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,680 INFO L272 TraceCheckUtils]: 11: Hoare triple {45710#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,681 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45333#true} {45710#(< ~counter~0 44)} #94#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:45,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:45,681 INFO L290 TraceCheckUtils]: 7: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:45,681 INFO L272 TraceCheckUtils]: 6: Hoare triple {45710#(< ~counter~0 44)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:45,681 INFO L290 TraceCheckUtils]: 5: Hoare triple {45710#(< ~counter~0 44)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,682 INFO L272 TraceCheckUtils]: 4: Hoare triple {45710#(< ~counter~0 44)} call #t~ret9 := main(); {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45710#(< ~counter~0 44)} {45333#true} #108#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {45710#(< ~counter~0 44)} assume true; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45710#(< ~counter~0 44)} is VALID [2022-04-28 05:52:45,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:45,683 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:45,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:45,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1970860157] [2022-04-28 05:52:45,683 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:45,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [921849553] [2022-04-28 05:52:45,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [921849553] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:45,683 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:45,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:52:45,683 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:45,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1137866859] [2022-04-28 05:52:45,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1137866859] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:45,683 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:45,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:52:45,684 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2081449302] [2022-04-28 05:52:45,684 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:45,684 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:45,684 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:45,684 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:45,724 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:45,724 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:52:45,724 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:45,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:52:45,724 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:52:45,724 INFO L87 Difference]: Start difference. First operand 568 states and 779 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:47,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:47,658 INFO L93 Difference]: Finished difference Result 914 states and 1304 transitions. [2022-04-28 05:52:47,658 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:52:47,658 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:47,658 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:47,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:47,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:47,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:47,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:47,661 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 181 transitions. [2022-04-28 05:52:47,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:47,825 INFO L225 Difference]: With dead ends: 914 [2022-04-28 05:52:47,825 INFO L226 Difference]: Without dead ends: 584 [2022-04-28 05:52:47,826 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:52:47,827 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 86 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:47,827 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 276 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:47,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 584 states. [2022-04-28 05:52:49,259 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 584 to 575. [2022-04-28 05:52:49,260 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:49,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:49,261 INFO L74 IsIncluded]: Start isIncluded. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:49,263 INFO L87 Difference]: Start difference. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:49,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:49,281 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:49,281 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:49,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:49,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:49,283 INFO L74 IsIncluded]: Start isIncluded. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:49,283 INFO L87 Difference]: Start difference. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:49,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:49,302 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:49,302 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:49,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:49,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:49,303 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:49,303 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:49,304 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:49,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 575 states to 575 states and 786 transitions. [2022-04-28 05:52:49,328 INFO L78 Accepts]: Start accepts. Automaton has 575 states and 786 transitions. Word has length 69 [2022-04-28 05:52:49,328 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:49,329 INFO L495 AbstractCegarLoop]: Abstraction has 575 states and 786 transitions. [2022-04-28 05:52:49,329 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:49,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 575 states and 786 transitions. [2022-04-28 05:52:50,529 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 786 edges. 786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:50,529 INFO L276 IsEmpty]: Start isEmpty. Operand 575 states and 786 transitions. [2022-04-28 05:52:50,530 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:50,530 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:50,530 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:50,553 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:50,751 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:50,751 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:50,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:50,752 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 3 times [2022-04-28 05:52:50,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:50,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1343237769] [2022-04-28 05:52:50,752 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:50,753 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 4 times [2022-04-28 05:52:50,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:50,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1377235075] [2022-04-28 05:52:50,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:50,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:50,764 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:50,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [523494067] [2022-04-28 05:52:50,764 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:50,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:50,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:50,765 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:50,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-28 05:52:50,817 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:50,817 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:50,818 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:52:50,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:50,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:51,184 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:51,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,185 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49926#(<= ~counter~0 0)} {49918#true} #108#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {49926#(<= ~counter~0 0)} call #t~ret9 := main(); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {49926#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,186 INFO L272 TraceCheckUtils]: 6: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,186 INFO L290 TraceCheckUtils]: 7: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,187 INFO L290 TraceCheckUtils]: 8: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,187 INFO L290 TraceCheckUtils]: 9: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,187 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #94#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,188 INFO L272 TraceCheckUtils]: 11: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,188 INFO L290 TraceCheckUtils]: 12: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,188 INFO L290 TraceCheckUtils]: 13: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,188 INFO L290 TraceCheckUtils]: 14: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,189 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #96#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,189 INFO L290 TraceCheckUtils]: 16: Hoare triple {49926#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:51,190 INFO L290 TraceCheckUtils]: 17: Hoare triple {49926#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:51,190 INFO L290 TraceCheckUtils]: 18: Hoare triple {49975#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:51,190 INFO L290 TraceCheckUtils]: 19: Hoare triple {49975#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:51,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {49975#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:51,191 INFO L290 TraceCheckUtils]: 21: Hoare triple {49985#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:51,192 INFO L290 TraceCheckUtils]: 22: Hoare triple {49985#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:51,192 INFO L290 TraceCheckUtils]: 23: Hoare triple {49985#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:51,192 INFO L290 TraceCheckUtils]: 24: Hoare triple {49985#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:51,193 INFO L290 TraceCheckUtils]: 25: Hoare triple {49998#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:51,193 INFO L290 TraceCheckUtils]: 26: Hoare triple {49998#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:51,193 INFO L290 TraceCheckUtils]: 27: Hoare triple {49998#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:51,194 INFO L290 TraceCheckUtils]: 28: Hoare triple {50008#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:51,194 INFO L290 TraceCheckUtils]: 29: Hoare triple {50008#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:51,195 INFO L290 TraceCheckUtils]: 30: Hoare triple {50008#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,195 INFO L290 TraceCheckUtils]: 31: Hoare triple {50018#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,195 INFO L272 TraceCheckUtils]: 32: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,196 INFO L290 TraceCheckUtils]: 33: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,196 INFO L290 TraceCheckUtils]: 34: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,196 INFO L290 TraceCheckUtils]: 35: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,197 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #98#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,197 INFO L272 TraceCheckUtils]: 37: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,197 INFO L290 TraceCheckUtils]: 38: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,198 INFO L290 TraceCheckUtils]: 39: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,198 INFO L290 TraceCheckUtils]: 40: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,198 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #100#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,199 INFO L272 TraceCheckUtils]: 42: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,199 INFO L290 TraceCheckUtils]: 43: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,199 INFO L290 TraceCheckUtils]: 44: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,200 INFO L290 TraceCheckUtils]: 45: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,200 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #102#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,200 INFO L272 TraceCheckUtils]: 47: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,201 INFO L290 TraceCheckUtils]: 48: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,201 INFO L290 TraceCheckUtils]: 49: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,201 INFO L290 TraceCheckUtils]: 50: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,202 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #104#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,202 INFO L290 TraceCheckUtils]: 52: Hoare triple {50018#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,207 INFO L290 TraceCheckUtils]: 53: Hoare triple {50018#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:51,208 INFO L290 TraceCheckUtils]: 54: Hoare triple {50018#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:51,208 INFO L290 TraceCheckUtils]: 55: Hoare triple {50091#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:51,209 INFO L290 TraceCheckUtils]: 56: Hoare triple {50091#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:51,209 INFO L290 TraceCheckUtils]: 57: Hoare triple {50091#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:51,210 INFO L290 TraceCheckUtils]: 58: Hoare triple {50091#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:51,210 INFO L290 TraceCheckUtils]: 59: Hoare triple {50104#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:51,210 INFO L290 TraceCheckUtils]: 60: Hoare triple {50104#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:51,211 INFO L290 TraceCheckUtils]: 61: Hoare triple {50104#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50114#(<= |main_#t~post7| 7)} is VALID [2022-04-28 05:52:51,211 INFO L290 TraceCheckUtils]: 62: Hoare triple {50114#(<= |main_#t~post7| 7)} assume !(#t~post7 < 50);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:51,211 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49919#false} is VALID [2022-04-28 05:52:51,211 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:51,211 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 50);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:51,212 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {49919#false} is VALID [2022-04-28 05:52:51,212 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:51,212 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:51,212 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:51,212 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:51,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 50);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49919#false} is VALID [2022-04-28 05:52:51,600 INFO L290 TraceCheckUtils]: 62: Hoare triple {50160#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:51,601 INFO L290 TraceCheckUtils]: 61: Hoare triple {50164#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50160#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:52:51,601 INFO L290 TraceCheckUtils]: 60: Hoare triple {50164#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50164#(< ~counter~0 50)} is VALID [2022-04-28 05:52:51,601 INFO L290 TraceCheckUtils]: 59: Hoare triple {50164#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {50164#(< ~counter~0 50)} is VALID [2022-04-28 05:52:51,602 INFO L290 TraceCheckUtils]: 58: Hoare triple {50174#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50164#(< ~counter~0 50)} is VALID [2022-04-28 05:52:51,602 INFO L290 TraceCheckUtils]: 57: Hoare triple {50174#(< ~counter~0 49)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50174#(< ~counter~0 49)} is VALID [2022-04-28 05:52:51,603 INFO L290 TraceCheckUtils]: 56: Hoare triple {50174#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {50174#(< ~counter~0 49)} is VALID [2022-04-28 05:52:51,603 INFO L290 TraceCheckUtils]: 55: Hoare triple {50174#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {50174#(< ~counter~0 49)} is VALID [2022-04-28 05:52:51,603 INFO L290 TraceCheckUtils]: 54: Hoare triple {50187#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50174#(< ~counter~0 49)} is VALID [2022-04-28 05:52:51,604 INFO L290 TraceCheckUtils]: 53: Hoare triple {50187#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,604 INFO L290 TraceCheckUtils]: 52: Hoare triple {50187#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,604 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #104#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,604 INFO L290 TraceCheckUtils]: 50: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L290 TraceCheckUtils]: 49: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L290 TraceCheckUtils]: 48: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L272 TraceCheckUtils]: 47: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #102#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,605 INFO L290 TraceCheckUtils]: 45: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L290 TraceCheckUtils]: 44: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L290 TraceCheckUtils]: 43: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,605 INFO L272 TraceCheckUtils]: 42: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,606 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #100#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,606 INFO L290 TraceCheckUtils]: 40: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,606 INFO L290 TraceCheckUtils]: 39: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,606 INFO L290 TraceCheckUtils]: 38: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,606 INFO L272 TraceCheckUtils]: 37: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,606 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #98#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,607 INFO L290 TraceCheckUtils]: 35: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,607 INFO L290 TraceCheckUtils]: 34: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,607 INFO L290 TraceCheckUtils]: 33: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,607 INFO L272 TraceCheckUtils]: 32: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,607 INFO L290 TraceCheckUtils]: 31: Hoare triple {50187#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {50260#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50187#(< ~counter~0 48)} is VALID [2022-04-28 05:52:51,608 INFO L290 TraceCheckUtils]: 29: Hoare triple {50260#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50260#(< ~counter~0 47)} is VALID [2022-04-28 05:52:51,608 INFO L290 TraceCheckUtils]: 28: Hoare triple {50260#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {50260#(< ~counter~0 47)} is VALID [2022-04-28 05:52:51,609 INFO L290 TraceCheckUtils]: 27: Hoare triple {50270#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50260#(< ~counter~0 47)} is VALID [2022-04-28 05:52:51,611 INFO L290 TraceCheckUtils]: 26: Hoare triple {50270#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50270#(< ~counter~0 46)} is VALID [2022-04-28 05:52:51,611 INFO L290 TraceCheckUtils]: 25: Hoare triple {50270#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {50270#(< ~counter~0 46)} is VALID [2022-04-28 05:52:51,612 INFO L290 TraceCheckUtils]: 24: Hoare triple {50280#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50270#(< ~counter~0 46)} is VALID [2022-04-28 05:52:51,612 INFO L290 TraceCheckUtils]: 23: Hoare triple {50280#(< ~counter~0 45)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50280#(< ~counter~0 45)} is VALID [2022-04-28 05:52:51,613 INFO L290 TraceCheckUtils]: 22: Hoare triple {50280#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {50280#(< ~counter~0 45)} is VALID [2022-04-28 05:52:51,613 INFO L290 TraceCheckUtils]: 21: Hoare triple {50280#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {50280#(< ~counter~0 45)} is VALID [2022-04-28 05:52:51,613 INFO L290 TraceCheckUtils]: 20: Hoare triple {50293#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50280#(< ~counter~0 45)} is VALID [2022-04-28 05:52:51,614 INFO L290 TraceCheckUtils]: 19: Hoare triple {50293#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50293#(< ~counter~0 44)} is VALID [2022-04-28 05:52:51,614 INFO L290 TraceCheckUtils]: 18: Hoare triple {50293#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {50293#(< ~counter~0 44)} is VALID [2022-04-28 05:52:51,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {50303#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50293#(< ~counter~0 44)} is VALID [2022-04-28 05:52:51,615 INFO L290 TraceCheckUtils]: 16: Hoare triple {50303#(< ~counter~0 43)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,615 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49918#true} {50303#(< ~counter~0 43)} #96#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,615 INFO L290 TraceCheckUtils]: 14: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,615 INFO L290 TraceCheckUtils]: 13: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,615 INFO L272 TraceCheckUtils]: 11: Hoare triple {50303#(< ~counter~0 43)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,616 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49918#true} {50303#(< ~counter~0 43)} #94#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:51,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:51,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:51,616 INFO L272 TraceCheckUtils]: 6: Hoare triple {50303#(< ~counter~0 43)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:51,616 INFO L290 TraceCheckUtils]: 5: Hoare triple {50303#(< ~counter~0 43)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,616 INFO L272 TraceCheckUtils]: 4: Hoare triple {50303#(< ~counter~0 43)} call #t~ret9 := main(); {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,617 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50303#(< ~counter~0 43)} {49918#true} #108#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,617 INFO L290 TraceCheckUtils]: 2: Hoare triple {50303#(< ~counter~0 43)} assume true; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,617 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {50303#(< ~counter~0 43)} is VALID [2022-04-28 05:52:51,617 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:51,618 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:51,618 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:51,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1377235075] [2022-04-28 05:52:51,618 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:51,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [523494067] [2022-04-28 05:52:51,618 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [523494067] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:51,618 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:51,618 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:52:51,618 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:51,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1343237769] [2022-04-28 05:52:51,618 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1343237769] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:51,618 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:51,618 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:52:51,618 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [226913242] [2022-04-28 05:52:51,619 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:51,619 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:51,619 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:51,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:51,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:51,659 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:52:51,659 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:51,660 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:52:51,660 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:52:51,660 INFO L87 Difference]: Start difference. First operand 575 states and 786 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:53,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:53,846 INFO L93 Difference]: Finished difference Result 918 states and 1274 transitions. [2022-04-28 05:52:53,847 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:52:53,847 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:53,847 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:53,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:53,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:53,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:53,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:53,850 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 210 transitions. [2022-04-28 05:52:54,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:54,042 INFO L225 Difference]: With dead ends: 918 [2022-04-28 05:52:54,042 INFO L226 Difference]: Without dead ends: 688 [2022-04-28 05:52:54,043 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=244, Invalid=356, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:52:54,043 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 120 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:54,043 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 301 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:52:54,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 688 states. [2022-04-28 05:52:55,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 688 to 658. [2022-04-28 05:52:55,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:55,726 INFO L82 GeneralOperation]: Start isEquivalent. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:55,727 INFO L74 IsIncluded]: Start isIncluded. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:55,728 INFO L87 Difference]: Start difference. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:55,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:55,751 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:55,751 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:55,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:55,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:55,753 INFO L74 IsIncluded]: Start isIncluded. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:55,754 INFO L87 Difference]: Start difference. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:55,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:55,778 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:55,778 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:55,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:55,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:55,780 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:55,780 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:55,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:55,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 658 states to 658 states and 880 transitions. [2022-04-28 05:52:55,812 INFO L78 Accepts]: Start accepts. Automaton has 658 states and 880 transitions. Word has length 70 [2022-04-28 05:52:55,813 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:55,813 INFO L495 AbstractCegarLoop]: Abstraction has 658 states and 880 transitions. [2022-04-28 05:52:55,813 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:55,813 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 658 states and 880 transitions. [2022-04-28 05:52:57,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 880 edges. 880 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:57,333 INFO L276 IsEmpty]: Start isEmpty. Operand 658 states and 880 transitions. [2022-04-28 05:52:57,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:57,334 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:57,334 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 3, 3, 2, 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] [2022-04-28 05:52:57,350 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Ended with exit code 0 [2022-04-28 05:52:57,534 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-28 05:52:57,534 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:57,535 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:57,535 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 1 times [2022-04-28 05:52:57,535 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:57,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [771768160] [2022-04-28 05:52:57,535 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:57,535 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 2 times [2022-04-28 05:52:57,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:57,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1536386567] [2022-04-28 05:52:57,536 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:57,536 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:57,553 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:57,553 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1696512713] [2022-04-28 05:52:57,553 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:57,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:57,554 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:57,554 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:57,556 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-28 05:52:57,612 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:57,613 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:57,613 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:52:57,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:57,626 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:57,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:52:57,828 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:57,829 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 50);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:57,830 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:57,831 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,831 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:52:57,831 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,832 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:57,832 INFO L290 TraceCheckUtils]: 39: Hoare triple {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:57,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:57,833 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,833 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,833 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:57,833 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:57,833 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,834 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,834 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:57,834 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:57,834 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:57,834 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:57,835 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,835 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,835 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,836 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,836 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,836 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:57,837 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,837 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,837 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,838 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,838 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,838 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,839 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,839 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,839 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:57,840 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:57,840 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:57,840 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:52:57,840 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:52:57,841 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:52:57,841 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:10,343 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:53:10,344 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:53:10,344 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:10,345 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:10,345 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,345 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,346 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,346 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,346 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,347 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,347 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,347 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,348 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:10,348 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,349 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,349 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,349 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,350 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,350 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,350 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,350 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:53:10,350 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:53:10,350 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,351 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,351 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,351 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:53:10,351 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:53:10,351 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,352 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:10,352 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:10,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:10,353 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 50);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {54895#true} is VALID [2022-04-28 05:53:10,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:53:10,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:53:10,355 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:53:10,355 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:53:10,355 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:53:10,355 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:10,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1536386567] [2022-04-28 05:53:10,355 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:10,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1696512713] [2022-04-28 05:53:10,355 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1696512713] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:10,355 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:10,355 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:53:10,355 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:10,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [771768160] [2022-04-28 05:53:10,355 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [771768160] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:10,356 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:10,356 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:53:10,356 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [16574673] [2022-04-28 05:53:10,356 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:10,356 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:53:10,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:10,356 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:53:10,399 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:10,399 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:53:10,399 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:10,399 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:53:10,399 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:53:10,399 INFO L87 Difference]: Start difference. First operand 658 states and 880 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:53:12,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:12,981 INFO L93 Difference]: Finished difference Result 757 states and 1022 transitions. [2022-04-28 05:53:12,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:53:12,981 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:53:12,981 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:12,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:53:12,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:53:12,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:53:12,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:53:12,983 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 85 transitions. [2022-04-28 05:53:13,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:13,083 INFO L225 Difference]: With dead ends: 757 [2022-04-28 05:53:13,083 INFO L226 Difference]: Without dead ends: 755 [2022-04-28 05:53:13,084 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 132 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:53:13,084 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:13,084 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 212 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:13,085 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 755 states. [2022-04-28 05:53:14,949 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 755 to 748. [2022-04-28 05:53:14,949 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:14,950 INFO L82 GeneralOperation]: Start isEquivalent. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:53:14,951 INFO L74 IsIncluded]: Start isIncluded. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:53:14,951 INFO L87 Difference]: Start difference. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:53:14,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:14,983 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:53:14,983 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:53:14,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:14,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:14,986 INFO L74 IsIncluded]: Start isIncluded. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:53:14,986 INFO L87 Difference]: Start difference. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:53:15,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:15,013 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:53:15,013 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:53:15,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:15,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:15,015 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:15,015 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:15,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:53:15,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 748 states to 748 states and 1013 transitions. [2022-04-28 05:53:15,054 INFO L78 Accepts]: Start accepts. Automaton has 748 states and 1013 transitions. Word has length 70 [2022-04-28 05:53:15,054 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:15,054 INFO L495 AbstractCegarLoop]: Abstraction has 748 states and 1013 transitions. [2022-04-28 05:53:15,054 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:53:15,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 748 states and 1013 transitions. [2022-04-28 05:53:16,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1013 edges. 1013 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:16,756 INFO L276 IsEmpty]: Start isEmpty. Operand 748 states and 1013 transitions. [2022-04-28 05:53:16,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 05:53:16,756 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:16,756 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 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] [2022-04-28 05:53:16,772 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:16,957 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-28 05:53:16,957 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:16,957 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:16,957 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 3 times [2022-04-28 05:53:16,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:16,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1434473627] [2022-04-28 05:53:16,958 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:16,958 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 4 times [2022-04-28 05:53:16,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:16,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1982361104] [2022-04-28 05:53:16,958 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:16,958 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:16,970 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:16,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [537798668] [2022-04-28 05:53:16,971 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:16,971 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:16,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:16,972 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:16,974 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-28 05:53:17,029 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:17,030 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:17,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:53:17,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:17,044 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:17,939 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,940 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:53:17,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,941 INFO L290 TraceCheckUtils]: 18: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,942 INFO L290 TraceCheckUtils]: 19: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,942 INFO L290 TraceCheckUtils]: 20: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,943 INFO L290 TraceCheckUtils]: 21: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:17,943 INFO L290 TraceCheckUtils]: 23: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,944 INFO L290 TraceCheckUtils]: 24: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,944 INFO L290 TraceCheckUtils]: 25: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,945 INFO L290 TraceCheckUtils]: 26: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,945 INFO L290 TraceCheckUtils]: 27: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,945 INFO L290 TraceCheckUtils]: 28: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,946 INFO L290 TraceCheckUtils]: 29: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,946 INFO L290 TraceCheckUtils]: 30: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,947 INFO L290 TraceCheckUtils]: 31: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,947 INFO L272 TraceCheckUtils]: 32: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,947 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:17,947 INFO L290 TraceCheckUtils]: 34: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:17,948 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:17,949 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:17,949 INFO L272 TraceCheckUtils]: 37: Hoare triple {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,949 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:17,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:17,949 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:17,950 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:17,950 INFO L272 TraceCheckUtils]: 42: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,950 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:17,951 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:17,951 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,951 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:17,951 INFO L272 TraceCheckUtils]: 47: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,951 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:17,951 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:17,952 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,952 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:17,953 INFO L290 TraceCheckUtils]: 52: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:17,953 INFO L290 TraceCheckUtils]: 53: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,954 INFO L290 TraceCheckUtils]: 54: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,954 INFO L290 TraceCheckUtils]: 55: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,955 INFO L290 TraceCheckUtils]: 56: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:17,955 INFO L290 TraceCheckUtils]: 57: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,956 INFO L290 TraceCheckUtils]: 58: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,956 INFO L290 TraceCheckUtils]: 59: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post6 < 50);havoc #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,956 INFO L290 TraceCheckUtils]: 60: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,957 INFO L290 TraceCheckUtils]: 61: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,957 INFO L290 TraceCheckUtils]: 62: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post7 < 50);havoc #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,957 INFO L290 TraceCheckUtils]: 63: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,958 INFO L290 TraceCheckUtils]: 64: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,958 INFO L290 TraceCheckUtils]: 65: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post8 < 50);havoc #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,958 INFO L272 TraceCheckUtils]: 66: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:17,958 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:17,958 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:17,958 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:17,959 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #98#return; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:53:17,960 INFO L272 TraceCheckUtils]: 71: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:17,960 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:17,960 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:53:17,960 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:53:17,961 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 8 proven. 52 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-28 05:53:17,961 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:40,072 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:53:40,072 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:53:40,073 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:40,073 INFO L272 TraceCheckUtils]: 71: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:40,074 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,074 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:40,074 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:40,074 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:40,074 INFO L272 TraceCheckUtils]: 66: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:40,075 INFO L290 TraceCheckUtils]: 65: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,075 INFO L290 TraceCheckUtils]: 64: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,075 INFO L290 TraceCheckUtils]: 63: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,076 INFO L290 TraceCheckUtils]: 62: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,076 INFO L290 TraceCheckUtils]: 61: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,076 INFO L290 TraceCheckUtils]: 60: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,077 INFO L290 TraceCheckUtils]: 59: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:40,077 INFO L290 TraceCheckUtils]: 58: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:42,079 WARN L290 TraceCheckUtils]: 57: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:53:42,083 INFO L290 TraceCheckUtils]: 56: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,084 INFO L290 TraceCheckUtils]: 55: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,084 INFO L290 TraceCheckUtils]: 54: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,654 INFO L290 TraceCheckUtils]: 53: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,655 INFO L290 TraceCheckUtils]: 52: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,656 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #104#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,656 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:42,656 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:42,656 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:42,656 INFO L272 TraceCheckUtils]: 47: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,657 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #102#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,657 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:42,657 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:42,657 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:42,657 INFO L272 TraceCheckUtils]: 42: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,658 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #100#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:42,658 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:42,658 INFO L290 TraceCheckUtils]: 39: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:42,659 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:42,659 INFO L272 TraceCheckUtils]: 37: Hoare triple {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,660 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #98#return; {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:42,660 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:42,660 INFO L290 TraceCheckUtils]: 34: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:42,660 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:42,661 INFO L272 TraceCheckUtils]: 32: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,661 INFO L290 TraceCheckUtils]: 31: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:42,661 INFO L290 TraceCheckUtils]: 30: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:42,662 INFO L290 TraceCheckUtils]: 29: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:42,663 INFO L290 TraceCheckUtils]: 28: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:42,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 26: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 25: Hoare triple {59850#true} assume !!(#t~post6 < 50);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {59850#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {59850#true} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {59850#true} assume !(~c~0 >= ~b~0); {59850#true} is VALID [2022-04-28 05:53:42,664 INFO L290 TraceCheckUtils]: 21: Hoare triple {59850#true} assume !!(#t~post7 < 50);havoc #t~post7; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {59850#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 19: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 18: Hoare triple {59850#true} assume !!(#t~post6 < 50);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 17: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:42,665 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:53:42,666 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:53:42,666 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 30 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-28 05:53:42,666 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:42,666 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1982361104] [2022-04-28 05:53:42,666 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:42,666 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [537798668] [2022-04-28 05:53:42,666 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [537798668] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:42,666 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:42,666 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 12] total 22 [2022-04-28 05:53:42,666 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:42,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1434473627] [2022-04-28 05:53:42,667 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1434473627] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:42,667 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:42,667 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:53:42,667 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [920098585] [2022-04-28 05:53:42,667 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:42,667 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:42,667 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:42,667 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:42,725 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:42,725 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:53:42,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:42,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:53:42,726 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=379, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:42,726 INFO L87 Difference]: Start difference. First operand 748 states and 1013 transitions. Second operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:47,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:47,011 INFO L93 Difference]: Finished difference Result 840 states and 1136 transitions. [2022-04-28 05:53:47,011 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:53:47,011 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:47,011 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:47,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:47,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:47,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:47,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:47,014 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 172 transitions. [2022-04-28 05:53:47,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:47,231 INFO L225 Difference]: With dead ends: 840 [2022-04-28 05:53:47,231 INFO L226 Difference]: Without dead ends: 838 [2022-04-28 05:53:47,231 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=110, Invalid=540, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:53:47,231 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 81 mSDsluCounter, 468 mSDsCounter, 0 mSdLazyCounter, 724 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 530 SdHoareTripleChecker+Invalid, 768 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 724 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:47,232 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [100 Valid, 530 Invalid, 768 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 724 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 05:53:47,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 838 states. [2022-04-28 05:53:49,363 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 838 to 813. [2022-04-28 05:53:49,364 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:49,364 INFO L82 GeneralOperation]: Start isEquivalent. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:49,365 INFO L74 IsIncluded]: Start isIncluded. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:49,365 INFO L87 Difference]: Start difference. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:49,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:49,399 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:49,399 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:49,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:49,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:49,402 INFO L74 IsIncluded]: Start isIncluded. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:49,403 INFO L87 Difference]: Start difference. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:49,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:49,437 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:49,437 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:49,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:49,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:49,439 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:49,439 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:49,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:49,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1106 transitions. [2022-04-28 05:53:49,474 INFO L78 Accepts]: Start accepts. Automaton has 813 states and 1106 transitions. Word has length 75 [2022-04-28 05:53:49,474 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:49,475 INFO L495 AbstractCegarLoop]: Abstraction has 813 states and 1106 transitions. [2022-04-28 05:53:49,475 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:49,475 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 813 states and 1106 transitions. [2022-04-28 05:53:51,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1106 edges. 1106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:51,363 INFO L276 IsEmpty]: Start isEmpty. Operand 813 states and 1106 transitions. [2022-04-28 05:53:51,363 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-04-28 05:53:51,363 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:51,363 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 3, 3, 3, 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, 1, 1, 1] [2022-04-28 05:53:51,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:51,564 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-28 05:53:51,564 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:51,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:51,564 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 5 times [2022-04-28 05:53:51,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:51,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1132086560] [2022-04-28 05:53:51,565 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:51,565 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 6 times [2022-04-28 05:53:51,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:51,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1299280742] [2022-04-28 05:53:51,565 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:51,565 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:51,577 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:51,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [541060617] [2022-04-28 05:53:51,577 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:53:51,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:51,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:51,579 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:51,580 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-28 05:53:51,640 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:53:51,640 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:51,641 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:53:51,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:51,658 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:52,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:52,018 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,018 INFO L290 TraceCheckUtils]: 2: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,018 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65319#(<= ~counter~0 0)} {65311#true} #108#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {65319#(<= ~counter~0 0)} call #t~ret9 := main(); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {65319#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,019 INFO L272 TraceCheckUtils]: 6: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,021 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #94#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,021 INFO L272 TraceCheckUtils]: 11: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,022 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #96#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {65319#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:52,024 INFO L290 TraceCheckUtils]: 17: Hoare triple {65319#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:52,024 INFO L290 TraceCheckUtils]: 18: Hoare triple {65368#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:52,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {65368#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:52,025 INFO L290 TraceCheckUtils]: 20: Hoare triple {65368#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:52,025 INFO L290 TraceCheckUtils]: 21: Hoare triple {65378#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:52,025 INFO L290 TraceCheckUtils]: 22: Hoare triple {65378#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:52,026 INFO L290 TraceCheckUtils]: 23: Hoare triple {65378#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:52,026 INFO L290 TraceCheckUtils]: 24: Hoare triple {65378#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:52,026 INFO L290 TraceCheckUtils]: 25: Hoare triple {65391#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:52,027 INFO L290 TraceCheckUtils]: 26: Hoare triple {65391#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:52,027 INFO L290 TraceCheckUtils]: 27: Hoare triple {65391#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:52,028 INFO L290 TraceCheckUtils]: 28: Hoare triple {65401#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:52,028 INFO L290 TraceCheckUtils]: 29: Hoare triple {65401#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:52,029 INFO L290 TraceCheckUtils]: 30: Hoare triple {65401#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,029 INFO L290 TraceCheckUtils]: 31: Hoare triple {65411#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,029 INFO L272 TraceCheckUtils]: 32: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,030 INFO L290 TraceCheckUtils]: 33: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,030 INFO L290 TraceCheckUtils]: 34: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,030 INFO L290 TraceCheckUtils]: 35: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,031 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #98#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,031 INFO L272 TraceCheckUtils]: 37: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,031 INFO L290 TraceCheckUtils]: 38: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,032 INFO L290 TraceCheckUtils]: 39: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,032 INFO L290 TraceCheckUtils]: 40: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,032 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #100#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,033 INFO L272 TraceCheckUtils]: 42: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,033 INFO L290 TraceCheckUtils]: 43: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,033 INFO L290 TraceCheckUtils]: 44: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,034 INFO L290 TraceCheckUtils]: 45: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,034 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #102#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,035 INFO L272 TraceCheckUtils]: 47: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,035 INFO L290 TraceCheckUtils]: 48: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,035 INFO L290 TraceCheckUtils]: 49: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,035 INFO L290 TraceCheckUtils]: 50: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,036 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #104#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,036 INFO L290 TraceCheckUtils]: 52: Hoare triple {65411#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,036 INFO L290 TraceCheckUtils]: 53: Hoare triple {65411#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:52,037 INFO L290 TraceCheckUtils]: 54: Hoare triple {65411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:52,037 INFO L290 TraceCheckUtils]: 55: Hoare triple {65484#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:52,038 INFO L290 TraceCheckUtils]: 56: Hoare triple {65484#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:52,038 INFO L290 TraceCheckUtils]: 57: Hoare triple {65484#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:52,039 INFO L290 TraceCheckUtils]: 58: Hoare triple {65484#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:52,039 INFO L290 TraceCheckUtils]: 59: Hoare triple {65497#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:52,039 INFO L290 TraceCheckUtils]: 60: Hoare triple {65497#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:52,040 INFO L290 TraceCheckUtils]: 61: Hoare triple {65497#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:52,040 INFO L290 TraceCheckUtils]: 62: Hoare triple {65507#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:52,040 INFO L290 TraceCheckUtils]: 63: Hoare triple {65507#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 64: Hoare triple {65507#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65517#(<= |main_#t~post8| 8)} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 65: Hoare triple {65517#(<= |main_#t~post8| 8)} assume !(#t~post8 < 50);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 50);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 50);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:52,041 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:52,042 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:52,042 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:52,500 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:52,500 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:52,500 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:52,500 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {65312#false} is VALID [2022-04-28 05:53:52,500 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 50);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:52,500 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 50);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 65: Hoare triple {65581#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:52,501 INFO L290 TraceCheckUtils]: 64: Hoare triple {65585#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65581#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:53:52,502 INFO L290 TraceCheckUtils]: 63: Hoare triple {65585#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65585#(< ~counter~0 50)} is VALID [2022-04-28 05:53:52,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {65585#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {65585#(< ~counter~0 50)} is VALID [2022-04-28 05:53:52,503 INFO L290 TraceCheckUtils]: 61: Hoare triple {65595#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65585#(< ~counter~0 50)} is VALID [2022-04-28 05:53:52,503 INFO L290 TraceCheckUtils]: 60: Hoare triple {65595#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65595#(< ~counter~0 49)} is VALID [2022-04-28 05:53:52,504 INFO L290 TraceCheckUtils]: 59: Hoare triple {65595#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {65595#(< ~counter~0 49)} is VALID [2022-04-28 05:53:52,504 INFO L290 TraceCheckUtils]: 58: Hoare triple {65605#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65595#(< ~counter~0 49)} is VALID [2022-04-28 05:53:52,504 INFO L290 TraceCheckUtils]: 57: Hoare triple {65605#(< ~counter~0 48)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65605#(< ~counter~0 48)} is VALID [2022-04-28 05:53:52,505 INFO L290 TraceCheckUtils]: 56: Hoare triple {65605#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {65605#(< ~counter~0 48)} is VALID [2022-04-28 05:53:52,505 INFO L290 TraceCheckUtils]: 55: Hoare triple {65605#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {65605#(< ~counter~0 48)} is VALID [2022-04-28 05:53:52,506 INFO L290 TraceCheckUtils]: 54: Hoare triple {65618#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65605#(< ~counter~0 48)} is VALID [2022-04-28 05:53:52,506 INFO L290 TraceCheckUtils]: 53: Hoare triple {65618#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,506 INFO L290 TraceCheckUtils]: 52: Hoare triple {65618#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,507 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #104#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,507 INFO L290 TraceCheckUtils]: 50: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,507 INFO L290 TraceCheckUtils]: 49: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,507 INFO L290 TraceCheckUtils]: 48: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,507 INFO L272 TraceCheckUtils]: 47: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,507 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #102#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,507 INFO L290 TraceCheckUtils]: 45: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L290 TraceCheckUtils]: 44: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L290 TraceCheckUtils]: 43: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L272 TraceCheckUtils]: 42: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #100#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,508 INFO L290 TraceCheckUtils]: 40: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L290 TraceCheckUtils]: 39: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L290 TraceCheckUtils]: 38: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,508 INFO L272 TraceCheckUtils]: 37: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,509 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #98#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,509 INFO L290 TraceCheckUtils]: 35: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,509 INFO L290 TraceCheckUtils]: 34: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,509 INFO L290 TraceCheckUtils]: 33: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,509 INFO L272 TraceCheckUtils]: 32: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,509 INFO L290 TraceCheckUtils]: 31: Hoare triple {65618#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,510 INFO L290 TraceCheckUtils]: 30: Hoare triple {65691#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65618#(< ~counter~0 47)} is VALID [2022-04-28 05:53:52,510 INFO L290 TraceCheckUtils]: 29: Hoare triple {65691#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65691#(< ~counter~0 46)} is VALID [2022-04-28 05:53:52,511 INFO L290 TraceCheckUtils]: 28: Hoare triple {65691#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {65691#(< ~counter~0 46)} is VALID [2022-04-28 05:53:52,511 INFO L290 TraceCheckUtils]: 27: Hoare triple {65701#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65691#(< ~counter~0 46)} is VALID [2022-04-28 05:53:52,511 INFO L290 TraceCheckUtils]: 26: Hoare triple {65701#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65701#(< ~counter~0 45)} is VALID [2022-04-28 05:53:52,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {65701#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {65701#(< ~counter~0 45)} is VALID [2022-04-28 05:53:52,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {65711#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65701#(< ~counter~0 45)} is VALID [2022-04-28 05:53:52,513 INFO L290 TraceCheckUtils]: 23: Hoare triple {65711#(< ~counter~0 44)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65711#(< ~counter~0 44)} is VALID [2022-04-28 05:53:52,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {65711#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {65711#(< ~counter~0 44)} is VALID [2022-04-28 05:53:52,513 INFO L290 TraceCheckUtils]: 21: Hoare triple {65711#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {65711#(< ~counter~0 44)} is VALID [2022-04-28 05:53:52,514 INFO L290 TraceCheckUtils]: 20: Hoare triple {65724#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65711#(< ~counter~0 44)} is VALID [2022-04-28 05:53:52,514 INFO L290 TraceCheckUtils]: 19: Hoare triple {65724#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65724#(< ~counter~0 43)} is VALID [2022-04-28 05:53:52,514 INFO L290 TraceCheckUtils]: 18: Hoare triple {65724#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {65724#(< ~counter~0 43)} is VALID [2022-04-28 05:53:52,515 INFO L290 TraceCheckUtils]: 17: Hoare triple {65734#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65724#(< ~counter~0 43)} is VALID [2022-04-28 05:53:52,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {65734#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,516 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65311#true} {65734#(< ~counter~0 42)} #96#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,516 INFO L290 TraceCheckUtils]: 14: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,516 INFO L290 TraceCheckUtils]: 13: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,516 INFO L272 TraceCheckUtils]: 11: Hoare triple {65734#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,517 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65311#true} {65734#(< ~counter~0 42)} #94#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,517 INFO L290 TraceCheckUtils]: 9: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:52,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:52,517 INFO L290 TraceCheckUtils]: 7: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:52,517 INFO L272 TraceCheckUtils]: 6: Hoare triple {65734#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:52,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {65734#(< ~counter~0 42)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,517 INFO L272 TraceCheckUtils]: 4: Hoare triple {65734#(< ~counter~0 42)} call #t~ret9 := main(); {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,518 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65734#(< ~counter~0 42)} {65311#true} #108#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {65734#(< ~counter~0 42)} assume true; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65734#(< ~counter~0 42)} is VALID [2022-04-28 05:53:52,519 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:52,519 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:52,519 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:52,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1299280742] [2022-04-28 05:53:52,519 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:52,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [541060617] [2022-04-28 05:53:52,519 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [541060617] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:52,519 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:52,519 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:53:52,519 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:52,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1132086560] [2022-04-28 05:53:52,519 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1132086560] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:52,519 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:52,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:53:52,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [861955372] [2022-04-28 05:53:52,520 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:52,520 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:52,520 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:52,520 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:52,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:52,569 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:53:52,569 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:52,569 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:53:52,569 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:52,570 INFO L87 Difference]: Start difference. First operand 813 states and 1106 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:55,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:55,770 INFO L93 Difference]: Finished difference Result 1433 states and 1997 transitions. [2022-04-28 05:53:55,770 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:53:55,770 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:55,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:55,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:55,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:55,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:55,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:55,775 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 239 transitions. [2022-04-28 05:53:55,971 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:56,022 INFO L225 Difference]: With dead ends: 1433 [2022-04-28 05:53:56,022 INFO L226 Difference]: Without dead ends: 975 [2022-04-28 05:53:56,023 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 131 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=309, Invalid=447, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:53:56,023 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 170 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:56,024 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 287 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 144 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:56,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 975 states. [2022-04-28 05:53:58,437 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 975 to 947. [2022-04-28 05:53:58,438 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:58,439 INFO L82 GeneralOperation]: Start isEquivalent. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:58,439 INFO L74 IsIncluded]: Start isIncluded. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:58,440 INFO L87 Difference]: Start difference. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:58,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:58,471 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:58,471 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:58,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:58,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:58,474 INFO L74 IsIncluded]: Start isIncluded. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:58,474 INFO L87 Difference]: Start difference. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:58,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:58,508 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:58,508 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:58,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:58,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:58,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:58,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:58,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:58,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 947 states to 947 states and 1263 transitions. [2022-04-28 05:53:58,553 INFO L78 Accepts]: Start accepts. Automaton has 947 states and 1263 transitions. Word has length 76 [2022-04-28 05:53:58,553 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:58,553 INFO L495 AbstractCegarLoop]: Abstraction has 947 states and 1263 transitions. [2022-04-28 05:53:58,553 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:58,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 947 states and 1263 transitions. [2022-04-28 05:54:00,763 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1263 edges. 1263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:00,763 INFO L276 IsEmpty]: Start isEmpty. Operand 947 states and 1263 transitions. [2022-04-28 05:54:00,764 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 05:54:00,764 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:00,764 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:54:00,782 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-28 05:54:00,971 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-28 05:54:00,971 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:00,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:00,972 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 1 times [2022-04-28 05:54:00,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:00,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1823170062] [2022-04-28 05:54:00,972 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:00,972 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 2 times [2022-04-28 05:54:00,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:00,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [305399531] [2022-04-28 05:54:00,973 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:00,973 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:00,982 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:00,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2044606030] [2022-04-28 05:54:00,982 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:00,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:00,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:00,984 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:54:00,992 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-28 05:54:01,041 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:01,042 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:01,043 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-28 05:54:01,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:01,058 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:01,988 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:54:01,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:54:01,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,988 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:54:01,989 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,990 INFO L290 TraceCheckUtils]: 18: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,991 INFO L290 TraceCheckUtils]: 21: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,992 INFO L290 TraceCheckUtils]: 22: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,993 INFO L272 TraceCheckUtils]: 25: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,993 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,993 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,993 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,996 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,996 INFO L272 TraceCheckUtils]: 30: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,996 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,996 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,996 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,997 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,997 INFO L272 TraceCheckUtils]: 35: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,997 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,997 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,997 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:01,998 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:01,998 INFO L272 TraceCheckUtils]: 40: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:01,999 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:01,999 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:01,999 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:02,000 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,000 INFO L290 TraceCheckUtils]: 45: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,001 INFO L290 TraceCheckUtils]: 46: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,001 INFO L290 TraceCheckUtils]: 47: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,002 INFO L272 TraceCheckUtils]: 48: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:02,002 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:02,002 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:02,002 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:02,003 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,003 INFO L272 TraceCheckUtils]: 53: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:02,003 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:02,004 INFO L290 TraceCheckUtils]: 55: Hoare triple {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:02,004 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:02,005 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,005 INFO L272 TraceCheckUtils]: 58: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:02,005 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:02,005 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:02,005 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:02,006 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,006 INFO L272 TraceCheckUtils]: 63: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:02,006 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:02,006 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:02,007 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:02,007 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,008 INFO L290 TraceCheckUtils]: 68: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,009 INFO L290 TraceCheckUtils]: 69: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,009 INFO L290 TraceCheckUtils]: 70: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,010 INFO L290 TraceCheckUtils]: 71: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,010 INFO L290 TraceCheckUtils]: 72: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:02,011 INFO L290 TraceCheckUtils]: 73: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:54:02,011 INFO L290 TraceCheckUtils]: 74: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:54:02,012 INFO L290 TraceCheckUtils]: 75: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:54:02,012 INFO L290 TraceCheckUtils]: 76: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:54:02,013 INFO L272 TraceCheckUtils]: 77: Hoare triple {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:02,013 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:02,014 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:54:02,014 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:54:02,014 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:54:02,014 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:14,113 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:54:14,113 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:54:14,114 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:14,114 INFO L272 TraceCheckUtils]: 77: Hoare triple {72775#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:14,115 INFO L290 TraceCheckUtils]: 76: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {72775#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:54:14,115 INFO L290 TraceCheckUtils]: 75: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:54:14,116 INFO L290 TraceCheckUtils]: 74: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:54:14,965 INFO L290 TraceCheckUtils]: 73: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:54:14,966 INFO L290 TraceCheckUtils]: 72: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:14,966 INFO L290 TraceCheckUtils]: 71: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:14,967 INFO L290 TraceCheckUtils]: 70: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,175 INFO L290 TraceCheckUtils]: 69: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,175 INFO L290 TraceCheckUtils]: 68: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,176 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,176 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,176 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,176 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,176 INFO L272 TraceCheckUtils]: 63: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,177 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,177 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,177 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,177 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,177 INFO L272 TraceCheckUtils]: 58: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,178 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,178 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:15,179 INFO L290 TraceCheckUtils]: 55: Hoare triple {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:15,179 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:54:15,179 INFO L272 TraceCheckUtils]: 53: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,180 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,180 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,180 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,180 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,180 INFO L272 TraceCheckUtils]: 48: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,181 INFO L290 TraceCheckUtils]: 47: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,181 INFO L290 TraceCheckUtils]: 46: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,302 INFO L290 TraceCheckUtils]: 45: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,303 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,303 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,303 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,303 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,303 INFO L272 TraceCheckUtils]: 40: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,304 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,304 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,304 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,304 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,304 INFO L272 TraceCheckUtils]: 35: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,305 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,305 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,305 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,305 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,305 INFO L272 TraceCheckUtils]: 30: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,306 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,306 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,306 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,306 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,306 INFO L272 TraceCheckUtils]: 25: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,307 INFO L290 TraceCheckUtils]: 24: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:54:15,309 INFO L290 TraceCheckUtils]: 21: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 50);havoc #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:54:15,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:54:15,310 INFO L290 TraceCheckUtils]: 19: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:54:15,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,312 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:15,312 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:54:15,312 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,312 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,312 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:54:15,313 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:54:15,314 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:54:15,314 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:15,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [305399531] [2022-04-28 05:54:15,314 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:15,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2044606030] [2022-04-28 05:54:15,314 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2044606030] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:15,314 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:15,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-28 05:54:15,315 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:15,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1823170062] [2022-04-28 05:54:15,315 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1823170062] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:15,315 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:15,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:54:15,315 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2038930962] [2022-04-28 05:54:15,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:15,315 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 05:54:15,316 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:15,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:54:15,379 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:15,380 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:54:15,380 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:15,380 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:54:15,380 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:54:15,380 INFO L87 Difference]: Start difference. First operand 947 states and 1263 transitions. Second operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:54:20,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:20,644 INFO L93 Difference]: Finished difference Result 1025 states and 1371 transitions. [2022-04-28 05:54:20,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:54:20,645 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 05:54:20,645 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:20,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:54:20,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:54:20,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:54:20,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:54:20,647 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 162 transitions. [2022-04-28 05:54:20,831 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:20,878 INFO L225 Difference]: With dead ends: 1025 [2022-04-28 05:54:20,878 INFO L226 Difference]: Without dead ends: 1022 [2022-04-28 05:54:20,879 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=132, Invalid=680, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:54:20,879 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 74 mSDsluCounter, 438 mSDsCounter, 0 mSdLazyCounter, 760 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 501 SdHoareTripleChecker+Invalid, 819 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 760 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:54:20,879 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 501 Invalid, 819 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 760 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-28 05:54:20,880 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1022 states. [2022-04-28 05:54:23,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1022 to 957. [2022-04-28 05:54:23,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:23,372 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:23,373 INFO L74 IsIncluded]: Start isIncluded. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:23,374 INFO L87 Difference]: Start difference. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:23,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:23,414 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:54:23,414 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:54:23,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:23,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:23,417 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:54:23,417 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:54:23,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:23,449 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:54:23,449 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:54:23,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:23,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:23,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:23,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:23,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:23,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1272 transitions. [2022-04-28 05:54:23,490 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1272 transitions. Word has length 81 [2022-04-28 05:54:23,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:23,491 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1272 transitions. [2022-04-28 05:54:23,491 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:54:23,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1272 transitions. [2022-04-28 05:54:25,765 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1272 edges. 1272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:25,766 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1272 transitions. [2022-04-28 05:54:25,766 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 05:54:25,766 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:25,766 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:54:25,783 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-28 05:54:25,967 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-28 05:54:25,967 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:25,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:25,968 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 1 times [2022-04-28 05:54:25,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:25,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1268493742] [2022-04-28 05:54:25,968 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:25,968 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 2 times [2022-04-28 05:54:25,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:25,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416967626] [2022-04-28 05:54:25,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:25,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:25,983 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:25,983 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1353934721] [2022-04-28 05:54:25,983 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:25,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:25,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:25,984 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:54:25,985 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-28 05:54:26,043 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:26,043 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:26,044 INFO L263 TraceCheckSpWp]: Trace formula consists of 261 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:54:26,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:26,061 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:26,449 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:54:26,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,449 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 0)} {79039#true} #108#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,450 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 0)} call #t~ret9 := main(); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,451 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #94#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,452 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,453 INFO L290 TraceCheckUtils]: 13: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,453 INFO L290 TraceCheckUtils]: 14: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,453 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #96#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,454 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:54:26,455 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:54:26,455 INFO L290 TraceCheckUtils]: 18: Hoare triple {79096#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:54:26,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {79096#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:54:26,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {79096#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:54:26,456 INFO L290 TraceCheckUtils]: 21: Hoare triple {79106#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:54:26,457 INFO L290 TraceCheckUtils]: 22: Hoare triple {79106#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:54:26,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {79106#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:54:26,458 INFO L290 TraceCheckUtils]: 24: Hoare triple {79106#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:54:26,458 INFO L290 TraceCheckUtils]: 25: Hoare triple {79119#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:54:26,458 INFO L290 TraceCheckUtils]: 26: Hoare triple {79119#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:54:26,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {79119#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:54:26,459 INFO L290 TraceCheckUtils]: 28: Hoare triple {79129#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:54:26,459 INFO L290 TraceCheckUtils]: 29: Hoare triple {79129#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:54:26,460 INFO L290 TraceCheckUtils]: 30: Hoare triple {79129#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,460 INFO L290 TraceCheckUtils]: 31: Hoare triple {79139#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,461 INFO L272 TraceCheckUtils]: 32: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,461 INFO L290 TraceCheckUtils]: 34: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,462 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #98#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,462 INFO L272 TraceCheckUtils]: 37: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,463 INFO L290 TraceCheckUtils]: 38: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,463 INFO L290 TraceCheckUtils]: 39: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,463 INFO L290 TraceCheckUtils]: 40: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,464 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #100#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,464 INFO L272 TraceCheckUtils]: 42: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,464 INFO L290 TraceCheckUtils]: 43: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,465 INFO L290 TraceCheckUtils]: 44: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,465 INFO L290 TraceCheckUtils]: 45: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,465 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #102#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,466 INFO L272 TraceCheckUtils]: 47: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,466 INFO L290 TraceCheckUtils]: 48: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,466 INFO L290 TraceCheckUtils]: 49: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,467 INFO L290 TraceCheckUtils]: 50: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,467 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #104#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,467 INFO L290 TraceCheckUtils]: 52: Hoare triple {79139#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:54:26,468 INFO L290 TraceCheckUtils]: 53: Hoare triple {79139#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,468 INFO L290 TraceCheckUtils]: 54: Hoare triple {79209#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,469 INFO L272 TraceCheckUtils]: 55: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,469 INFO L290 TraceCheckUtils]: 56: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,469 INFO L290 TraceCheckUtils]: 57: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,469 INFO L290 TraceCheckUtils]: 58: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,470 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #98#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,470 INFO L272 TraceCheckUtils]: 60: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,471 INFO L290 TraceCheckUtils]: 61: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,471 INFO L290 TraceCheckUtils]: 62: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,471 INFO L290 TraceCheckUtils]: 63: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,472 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #100#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,472 INFO L272 TraceCheckUtils]: 65: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,472 INFO L290 TraceCheckUtils]: 66: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,473 INFO L290 TraceCheckUtils]: 67: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,473 INFO L290 TraceCheckUtils]: 68: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,473 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #102#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,474 INFO L272 TraceCheckUtils]: 70: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,474 INFO L290 TraceCheckUtils]: 71: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,474 INFO L290 TraceCheckUtils]: 72: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,476 INFO L290 TraceCheckUtils]: 73: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,476 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #104#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,476 INFO L290 TraceCheckUtils]: 75: Hoare triple {79209#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,476 INFO L290 TraceCheckUtils]: 76: Hoare triple {79209#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:54:26,477 INFO L290 TraceCheckUtils]: 77: Hoare triple {79209#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:54:26,477 INFO L290 TraceCheckUtils]: 78: Hoare triple {79282#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:54:26,478 INFO L290 TraceCheckUtils]: 79: Hoare triple {79282#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:54:26,478 INFO L290 TraceCheckUtils]: 80: Hoare triple {79282#(<= ~counter~0 7)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:54:26,478 INFO L290 TraceCheckUtils]: 81: Hoare triple {79282#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79295#(<= |main_#t~post6| 7)} is VALID [2022-04-28 05:54:26,479 INFO L290 TraceCheckUtils]: 82: Hoare triple {79295#(<= |main_#t~post6| 7)} assume !(#t~post6 < 50);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:54:26,479 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {79040#false} is VALID [2022-04-28 05:54:26,479 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:54:26,479 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:54:26,479 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:54:26,479 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 88 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:54:26,479 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:26,934 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:54:26,934 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:54:26,934 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:54:26,934 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {79040#false} is VALID [2022-04-28 05:54:26,936 INFO L290 TraceCheckUtils]: 82: Hoare triple {79323#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:54:26,936 INFO L290 TraceCheckUtils]: 81: Hoare triple {79327#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79323#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:54:26,937 INFO L290 TraceCheckUtils]: 80: Hoare triple {79327#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79327#(< ~counter~0 50)} is VALID [2022-04-28 05:54:26,937 INFO L290 TraceCheckUtils]: 79: Hoare triple {79327#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {79327#(< ~counter~0 50)} is VALID [2022-04-28 05:54:26,937 INFO L290 TraceCheckUtils]: 78: Hoare triple {79327#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {79327#(< ~counter~0 50)} is VALID [2022-04-28 05:54:26,938 INFO L290 TraceCheckUtils]: 77: Hoare triple {79340#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79327#(< ~counter~0 50)} is VALID [2022-04-28 05:54:26,939 INFO L290 TraceCheckUtils]: 76: Hoare triple {79340#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,939 INFO L290 TraceCheckUtils]: 75: Hoare triple {79340#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,939 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #104#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,940 INFO L290 TraceCheckUtils]: 73: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,940 INFO L290 TraceCheckUtils]: 72: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,940 INFO L290 TraceCheckUtils]: 71: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,940 INFO L272 TraceCheckUtils]: 70: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,943 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #102#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,943 INFO L290 TraceCheckUtils]: 68: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,943 INFO L290 TraceCheckUtils]: 67: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,943 INFO L290 TraceCheckUtils]: 66: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,943 INFO L272 TraceCheckUtils]: 65: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,944 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #100#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,945 INFO L290 TraceCheckUtils]: 63: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,945 INFO L290 TraceCheckUtils]: 62: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,945 INFO L290 TraceCheckUtils]: 61: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,945 INFO L272 TraceCheckUtils]: 60: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,946 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #98#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,946 INFO L290 TraceCheckUtils]: 58: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,946 INFO L290 TraceCheckUtils]: 57: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,946 INFO L290 TraceCheckUtils]: 56: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,947 INFO L272 TraceCheckUtils]: 55: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,947 INFO L290 TraceCheckUtils]: 54: Hoare triple {79340#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,947 INFO L290 TraceCheckUtils]: 53: Hoare triple {79413#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79340#(< ~counter~0 49)} is VALID [2022-04-28 05:54:26,948 INFO L290 TraceCheckUtils]: 52: Hoare triple {79413#(< ~counter~0 48)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,948 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #104#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,948 INFO L290 TraceCheckUtils]: 50: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,948 INFO L290 TraceCheckUtils]: 49: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,948 INFO L290 TraceCheckUtils]: 48: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,948 INFO L272 TraceCheckUtils]: 47: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,949 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #102#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,949 INFO L290 TraceCheckUtils]: 45: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,949 INFO L290 TraceCheckUtils]: 44: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,949 INFO L290 TraceCheckUtils]: 43: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,949 INFO L272 TraceCheckUtils]: 42: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #100#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,950 INFO L290 TraceCheckUtils]: 40: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L290 TraceCheckUtils]: 39: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L290 TraceCheckUtils]: 38: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L272 TraceCheckUtils]: 37: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #98#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,950 INFO L290 TraceCheckUtils]: 35: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,950 INFO L290 TraceCheckUtils]: 34: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,951 INFO L290 TraceCheckUtils]: 33: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,951 INFO L272 TraceCheckUtils]: 32: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,951 INFO L290 TraceCheckUtils]: 31: Hoare triple {79413#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,952 INFO L290 TraceCheckUtils]: 30: Hoare triple {79483#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79413#(< ~counter~0 48)} is VALID [2022-04-28 05:54:26,952 INFO L290 TraceCheckUtils]: 29: Hoare triple {79483#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79483#(< ~counter~0 47)} is VALID [2022-04-28 05:54:26,952 INFO L290 TraceCheckUtils]: 28: Hoare triple {79483#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {79483#(< ~counter~0 47)} is VALID [2022-04-28 05:54:26,953 INFO L290 TraceCheckUtils]: 27: Hoare triple {79493#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79483#(< ~counter~0 47)} is VALID [2022-04-28 05:54:26,953 INFO L290 TraceCheckUtils]: 26: Hoare triple {79493#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79493#(< ~counter~0 46)} is VALID [2022-04-28 05:54:26,953 INFO L290 TraceCheckUtils]: 25: Hoare triple {79493#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {79493#(< ~counter~0 46)} is VALID [2022-04-28 05:54:26,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {79503#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79493#(< ~counter~0 46)} is VALID [2022-04-28 05:54:26,954 INFO L290 TraceCheckUtils]: 23: Hoare triple {79503#(< ~counter~0 45)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79503#(< ~counter~0 45)} is VALID [2022-04-28 05:54:26,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {79503#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {79503#(< ~counter~0 45)} is VALID [2022-04-28 05:54:26,955 INFO L290 TraceCheckUtils]: 21: Hoare triple {79503#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {79503#(< ~counter~0 45)} is VALID [2022-04-28 05:54:26,955 INFO L290 TraceCheckUtils]: 20: Hoare triple {79516#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79503#(< ~counter~0 45)} is VALID [2022-04-28 05:54:26,956 INFO L290 TraceCheckUtils]: 19: Hoare triple {79516#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79516#(< ~counter~0 44)} is VALID [2022-04-28 05:54:26,956 INFO L290 TraceCheckUtils]: 18: Hoare triple {79516#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {79516#(< ~counter~0 44)} is VALID [2022-04-28 05:54:26,957 INFO L290 TraceCheckUtils]: 17: Hoare triple {79526#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79516#(< ~counter~0 44)} is VALID [2022-04-28 05:54:26,957 INFO L290 TraceCheckUtils]: 16: Hoare triple {79526#(< ~counter~0 43)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,957 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79039#true} {79526#(< ~counter~0 43)} #96#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,957 INFO L290 TraceCheckUtils]: 14: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,957 INFO L290 TraceCheckUtils]: 13: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,957 INFO L290 TraceCheckUtils]: 12: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,957 INFO L272 TraceCheckUtils]: 11: Hoare triple {79526#(< ~counter~0 43)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79039#true} {79526#(< ~counter~0 43)} #94#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:54:26,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:54:26,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:54:26,958 INFO L272 TraceCheckUtils]: 6: Hoare triple {79526#(< ~counter~0 43)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:54:26,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {79526#(< ~counter~0 43)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,959 INFO L272 TraceCheckUtils]: 4: Hoare triple {79526#(< ~counter~0 43)} call #t~ret9 := main(); {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,959 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79526#(< ~counter~0 43)} {79039#true} #108#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,959 INFO L290 TraceCheckUtils]: 2: Hoare triple {79526#(< ~counter~0 43)} assume true; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79526#(< ~counter~0 43)} is VALID [2022-04-28 05:54:26,960 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:54:26,960 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 24 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:54:26,960 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:26,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416967626] [2022-04-28 05:54:26,960 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:26,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1353934721] [2022-04-28 05:54:26,960 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1353934721] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:26,960 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:26,960 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:54:26,960 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:26,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1268493742] [2022-04-28 05:54:26,961 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1268493742] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:26,961 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:26,961 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:54:26,961 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [759174511] [2022-04-28 05:54:26,961 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:26,961 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:54:26,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:26,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:54:27,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:27,014 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:54:27,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:27,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:54:27,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:54:27,015 INFO L87 Difference]: Start difference. First operand 957 states and 1272 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:54:29,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:29,916 INFO L93 Difference]: Finished difference Result 966 states and 1279 transitions. [2022-04-28 05:54:29,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:54:29,917 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:54:29,917 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:29,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:54:29,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:54:29,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:54:29,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:54:29,920 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 180 transitions. [2022-04-28 05:54:30,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:30,117 INFO L225 Difference]: With dead ends: 966 [2022-04-28 05:54:30,118 INFO L226 Difference]: Without dead ends: 959 [2022-04-28 05:54:30,118 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=246, Invalid=354, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:54:30,119 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 104 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:54:30,119 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [104 Valid, 282 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:54:30,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 959 states. [2022-04-28 05:54:32,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 959 to 957. [2022-04-28 05:54:32,460 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:32,461 INFO L82 GeneralOperation]: Start isEquivalent. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:32,463 INFO L74 IsIncluded]: Start isIncluded. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:32,464 INFO L87 Difference]: Start difference. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:32,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:32,492 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:54:32,492 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:54:32,493 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:32,493 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:32,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:54:32,494 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:54:32,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:32,532 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:54:32,532 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:54:32,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:32,534 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:32,534 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:32,534 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:32,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:54:32,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1270 transitions. [2022-04-28 05:54:32,574 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1270 transitions. Word has length 87 [2022-04-28 05:54:32,575 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:32,575 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1270 transitions. [2022-04-28 05:54:32,575 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:54:32,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1270 transitions. [2022-04-28 05:54:35,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1270 edges. 1270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:35,084 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1270 transitions. [2022-04-28 05:54:35,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-28 05:54:35,085 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:35,085 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:54:35,101 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Ended with exit code 0 [2022-04-28 05:54:35,285 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:35,285 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:35,285 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:35,286 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 3 times [2022-04-28 05:54:35,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:35,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1639765804] [2022-04-28 05:54:35,286 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:35,286 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 4 times [2022-04-28 05:54:35,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:35,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1678506671] [2022-04-28 05:54:35,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:35,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:35,301 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:35,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [888373038] [2022-04-28 05:54:35,301 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:54:35,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:35,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:35,302 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:54:35,303 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-28 05:54:35,354 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:54:35,355 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:35,356 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-28 05:54:35,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:35,376 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:36,557 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,558 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:54:36,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,559 INFO L290 TraceCheckUtils]: 18: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,559 INFO L290 TraceCheckUtils]: 19: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,559 INFO L290 TraceCheckUtils]: 20: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,561 INFO L290 TraceCheckUtils]: 23: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,561 INFO L290 TraceCheckUtils]: 24: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,562 INFO L290 TraceCheckUtils]: 26: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,562 INFO L290 TraceCheckUtils]: 27: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,563 INFO L290 TraceCheckUtils]: 28: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,563 INFO L290 TraceCheckUtils]: 29: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,563 INFO L290 TraceCheckUtils]: 30: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,564 INFO L290 TraceCheckUtils]: 31: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,564 INFO L272 TraceCheckUtils]: 32: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,564 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,564 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,564 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,565 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,565 INFO L272 TraceCheckUtils]: 37: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,565 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,565 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,565 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,566 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #100#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,566 INFO L272 TraceCheckUtils]: 42: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,566 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,566 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,566 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,567 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #102#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,567 INFO L272 TraceCheckUtils]: 47: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,567 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,567 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,567 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,568 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #104#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,568 INFO L290 TraceCheckUtils]: 52: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,569 INFO L290 TraceCheckUtils]: 53: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,569 INFO L290 TraceCheckUtils]: 54: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:54:36,569 INFO L272 TraceCheckUtils]: 55: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,569 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:36,570 INFO L290 TraceCheckUtils]: 57: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,570 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,571 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #98#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,571 INFO L272 TraceCheckUtils]: 60: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,571 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:36,571 INFO L290 TraceCheckUtils]: 62: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,572 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,572 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,573 INFO L272 TraceCheckUtils]: 65: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,573 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:54:36,573 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:54:36,573 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:54:36,573 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,573 INFO L272 TraceCheckUtils]: 70: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:54:36,574 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:36,574 INFO L290 TraceCheckUtils]: 72: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,574 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:36,575 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,575 INFO L290 TraceCheckUtils]: 75: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,577 INFO L290 TraceCheckUtils]: 76: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,577 INFO L290 TraceCheckUtils]: 77: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,577 INFO L290 TraceCheckUtils]: 78: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,578 INFO L290 TraceCheckUtils]: 79: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:54:36,578 INFO L290 TraceCheckUtils]: 80: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,579 INFO L290 TraceCheckUtils]: 81: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,579 INFO L290 TraceCheckUtils]: 82: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,580 INFO L290 TraceCheckUtils]: 83: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !(0 != ~b~0); {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:36,580 INFO L272 TraceCheckUtils]: 84: Hoare triple {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:36,581 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:36,581 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:54:36,581 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:54:36,582 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-28 05:54:36,582 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:53,268 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:55:53,269 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:55:53,269 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:55:53,270 INFO L272 TraceCheckUtils]: 84: Hoare triple {85643#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:55:53,270 INFO L290 TraceCheckUtils]: 83: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {85643#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:55:53,271 INFO L290 TraceCheckUtils]: 82: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:53,271 INFO L290 TraceCheckUtils]: 81: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:53,386 INFO L290 TraceCheckUtils]: 80: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:53,387 INFO L290 TraceCheckUtils]: 79: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,387 INFO L290 TraceCheckUtils]: 78: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,388 INFO L290 TraceCheckUtils]: 77: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,511 INFO L290 TraceCheckUtils]: 76: Hoare triple {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,512 INFO L290 TraceCheckUtils]: 75: Hoare triple {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,513 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,513 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,513 INFO L290 TraceCheckUtils]: 72: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,514 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:53,514 INFO L272 TraceCheckUtils]: 70: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,515 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,515 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,515 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,515 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,515 INFO L272 TraceCheckUtils]: 65: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,516 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,516 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,516 INFO L290 TraceCheckUtils]: 62: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,517 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:53,517 INFO L272 TraceCheckUtils]: 60: Hoare triple {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,518 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,518 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,518 INFO L290 TraceCheckUtils]: 57: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:53,519 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:53,519 INFO L272 TraceCheckUtils]: 55: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,519 INFO L290 TraceCheckUtils]: 54: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,520 INFO L290 TraceCheckUtils]: 53: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,772 INFO L290 TraceCheckUtils]: 52: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:53,773 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,773 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,773 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,773 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,773 INFO L272 TraceCheckUtils]: 47: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,774 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,774 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,774 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,774 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,774 INFO L272 TraceCheckUtils]: 42: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,775 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,775 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,775 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,775 INFO L272 TraceCheckUtils]: 37: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,776 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,776 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,776 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,776 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,776 INFO L272 TraceCheckUtils]: 32: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,777 INFO L290 TraceCheckUtils]: 31: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,778 INFO L290 TraceCheckUtils]: 30: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,778 INFO L290 TraceCheckUtils]: 29: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:53,779 INFO L290 TraceCheckUtils]: 28: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 50);havoc #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:53,780 INFO L290 TraceCheckUtils]: 27: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 26: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 25: Hoare triple {85354#true} assume !!(#t~post6 < 50);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 23: Hoare triple {85354#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 22: Hoare triple {85354#true} assume !(~c~0 >= ~b~0); {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 21: Hoare triple {85354#true} assume !!(#t~post7 < 50);havoc #t~post7; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 20: Hoare triple {85354#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 19: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85354#true} is VALID [2022-04-28 05:55:53,781 INFO L290 TraceCheckUtils]: 18: Hoare triple {85354#true} assume !!(#t~post6 < 50);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 17: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:55:53,782 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:55:53,783 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-28 05:55:53,783 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:53,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1678506671] [2022-04-28 05:55:53,783 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:53,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [888373038] [2022-04-28 05:55:53,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [888373038] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:53,783 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:53,783 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 26 [2022-04-28 05:55:53,784 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:53,784 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1639765804] [2022-04-28 05:55:53,784 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1639765804] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:53,784 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:53,784 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:55:53,784 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [365700160] [2022-04-28 05:55:53,784 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:53,784 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:55:53,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:53,785 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:53,858 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:53,858 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:55:53,858 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:53,858 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:55:53,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=537, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:55:53,859 INFO L87 Difference]: Start difference. First operand 957 states and 1270 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:00,353 INFO L93 Difference]: Finished difference Result 1073 states and 1433 transitions. [2022-04-28 05:56:00,353 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:56:00,353 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:56:00,354 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:00,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:56:00,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:56:00,357 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-28 05:56:00,591 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:00,662 INFO L225 Difference]: With dead ends: 1073 [2022-04-28 05:56:00,662 INFO L226 Difference]: Without dead ends: 1070 [2022-04-28 05:56:00,663 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=154, Invalid=776, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:56:00,663 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 91 mSDsluCounter, 551 mSDsCounter, 0 mSdLazyCounter, 1071 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 626 SdHoareTripleChecker+Invalid, 1146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 1071 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:00,663 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [111 Valid, 626 Invalid, 1146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 1071 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 05:56:00,664 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1070 states. [2022-04-28 05:56:03,276 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1070 to 1027. [2022-04-28 05:56:03,277 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:03,278 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:03,278 INFO L74 IsIncluded]: Start isIncluded. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:03,279 INFO L87 Difference]: Start difference. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:03,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:03,311 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:56:03,311 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:56:03,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:03,312 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:03,313 INFO L74 IsIncluded]: Start isIncluded. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:56:03,313 INFO L87 Difference]: Start difference. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:56:03,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:03,352 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:56:03,352 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:56:03,353 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:03,353 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:03,353 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:03,353 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:03,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:03,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1027 states to 1027 states and 1375 transitions. [2022-04-28 05:56:03,406 INFO L78 Accepts]: Start accepts. Automaton has 1027 states and 1375 transitions. Word has length 88 [2022-04-28 05:56:03,406 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:03,406 INFO L495 AbstractCegarLoop]: Abstraction has 1027 states and 1375 transitions. [2022-04-28 05:56:03,406 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:03,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1027 states and 1375 transitions. [2022-04-28 05:56:06,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1375 edges. 1375 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:06,130 INFO L276 IsEmpty]: Start isEmpty. Operand 1027 states and 1375 transitions. [2022-04-28 05:56:06,131 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:56:06,131 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:06,131 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:06,148 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:06,339 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable30 [2022-04-28 05:56:06,339 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:06,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:06,340 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 5 times [2022-04-28 05:56:06,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:06,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [10879913] [2022-04-28 05:56:06,340 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:06,341 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 6 times [2022-04-28 05:56:06,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:06,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [984708718] [2022-04-28 05:56:06,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:06,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:06,357 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:06,357 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [847230867] [2022-04-28 05:56:06,358 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:06,358 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:06,358 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:06,359 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:06,360 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-28 05:56:06,433 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:56:06,433 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:06,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:56:06,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:06,453 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:06,883 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:56:06,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,884 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92265#(<= ~counter~0 0)} {92257#true} #108#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {92265#(<= ~counter~0 0)} call #t~ret9 := main(); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,885 INFO L290 TraceCheckUtils]: 5: Hoare triple {92265#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,885 INFO L272 TraceCheckUtils]: 6: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,886 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #94#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,887 INFO L272 TraceCheckUtils]: 11: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,887 INFO L290 TraceCheckUtils]: 12: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,888 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #96#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,888 INFO L290 TraceCheckUtils]: 16: Hoare triple {92265#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:06,890 INFO L290 TraceCheckUtils]: 17: Hoare triple {92265#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:06,890 INFO L290 TraceCheckUtils]: 18: Hoare triple {92314#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:06,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {92314#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:06,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {92314#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:06,891 INFO L290 TraceCheckUtils]: 21: Hoare triple {92324#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:06,891 INFO L290 TraceCheckUtils]: 22: Hoare triple {92324#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:06,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {92324#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,893 INFO L290 TraceCheckUtils]: 24: Hoare triple {92334#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,893 INFO L272 TraceCheckUtils]: 25: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,893 INFO L290 TraceCheckUtils]: 26: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,894 INFO L290 TraceCheckUtils]: 27: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,894 INFO L290 TraceCheckUtils]: 28: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,894 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #98#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,895 INFO L272 TraceCheckUtils]: 30: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,895 INFO L290 TraceCheckUtils]: 31: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,895 INFO L290 TraceCheckUtils]: 32: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,896 INFO L290 TraceCheckUtils]: 33: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,896 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #100#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,897 INFO L272 TraceCheckUtils]: 35: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,897 INFO L290 TraceCheckUtils]: 36: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,897 INFO L290 TraceCheckUtils]: 37: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,897 INFO L290 TraceCheckUtils]: 38: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,898 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #102#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,898 INFO L272 TraceCheckUtils]: 40: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,899 INFO L290 TraceCheckUtils]: 41: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,899 INFO L290 TraceCheckUtils]: 42: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,899 INFO L290 TraceCheckUtils]: 43: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,900 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #104#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,900 INFO L290 TraceCheckUtils]: 45: Hoare triple {92334#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,900 INFO L290 TraceCheckUtils]: 46: Hoare triple {92334#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:06,901 INFO L290 TraceCheckUtils]: 47: Hoare triple {92334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:06,901 INFO L290 TraceCheckUtils]: 48: Hoare triple {92407#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:06,901 INFO L290 TraceCheckUtils]: 49: Hoare triple {92407#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:06,902 INFO L290 TraceCheckUtils]: 50: Hoare triple {92407#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:06,902 INFO L290 TraceCheckUtils]: 51: Hoare triple {92407#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:06,903 INFO L290 TraceCheckUtils]: 52: Hoare triple {92420#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:06,903 INFO L290 TraceCheckUtils]: 53: Hoare triple {92420#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:06,904 INFO L290 TraceCheckUtils]: 54: Hoare triple {92420#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:06,904 INFO L290 TraceCheckUtils]: 55: Hoare triple {92430#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:06,904 INFO L290 TraceCheckUtils]: 56: Hoare triple {92430#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:06,905 INFO L290 TraceCheckUtils]: 57: Hoare triple {92430#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,905 INFO L290 TraceCheckUtils]: 58: Hoare triple {92440#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,906 INFO L272 TraceCheckUtils]: 59: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,906 INFO L290 TraceCheckUtils]: 60: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,906 INFO L290 TraceCheckUtils]: 61: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,907 INFO L290 TraceCheckUtils]: 62: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,907 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #98#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,908 INFO L272 TraceCheckUtils]: 64: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,908 INFO L290 TraceCheckUtils]: 65: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,908 INFO L290 TraceCheckUtils]: 66: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,908 INFO L290 TraceCheckUtils]: 67: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,909 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #100#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,909 INFO L272 TraceCheckUtils]: 69: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,910 INFO L290 TraceCheckUtils]: 70: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,910 INFO L290 TraceCheckUtils]: 71: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,910 INFO L290 TraceCheckUtils]: 72: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,911 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #102#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,911 INFO L272 TraceCheckUtils]: 74: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,911 INFO L290 TraceCheckUtils]: 75: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,912 INFO L290 TraceCheckUtils]: 76: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,912 INFO L290 TraceCheckUtils]: 77: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,912 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #104#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,913 INFO L290 TraceCheckUtils]: 79: Hoare triple {92440#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,913 INFO L290 TraceCheckUtils]: 80: Hoare triple {92440#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:06,914 INFO L290 TraceCheckUtils]: 81: Hoare triple {92440#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:06,914 INFO L290 TraceCheckUtils]: 82: Hoare triple {92513#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:06,914 INFO L290 TraceCheckUtils]: 83: Hoare triple {92513#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:06,914 INFO L290 TraceCheckUtils]: 84: Hoare triple {92513#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:06,915 INFO L290 TraceCheckUtils]: 85: Hoare triple {92513#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92526#(<= |main_#t~post6| 8)} is VALID [2022-04-28 05:56:06,915 INFO L290 TraceCheckUtils]: 86: Hoare triple {92526#(<= |main_#t~post6| 8)} assume !(#t~post6 < 50);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:56:06,915 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92258#false} is VALID [2022-04-28 05:56:06,915 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:56:06,915 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:56:06,915 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:56:06,916 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 98 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:06,916 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:07,383 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:56:07,383 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:56:07,383 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:56:07,383 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92258#false} is VALID [2022-04-28 05:56:07,383 INFO L290 TraceCheckUtils]: 86: Hoare triple {92554#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:56:07,383 INFO L290 TraceCheckUtils]: 85: Hoare triple {92558#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92554#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:56:07,384 INFO L290 TraceCheckUtils]: 84: Hoare triple {92558#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92558#(< ~counter~0 50)} is VALID [2022-04-28 05:56:07,384 INFO L290 TraceCheckUtils]: 83: Hoare triple {92558#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {92558#(< ~counter~0 50)} is VALID [2022-04-28 05:56:07,384 INFO L290 TraceCheckUtils]: 82: Hoare triple {92558#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {92558#(< ~counter~0 50)} is VALID [2022-04-28 05:56:07,386 INFO L290 TraceCheckUtils]: 81: Hoare triple {92571#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92558#(< ~counter~0 50)} is VALID [2022-04-28 05:56:07,386 INFO L290 TraceCheckUtils]: 80: Hoare triple {92571#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,386 INFO L290 TraceCheckUtils]: 79: Hoare triple {92571#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,387 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #104#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,387 INFO L290 TraceCheckUtils]: 77: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,387 INFO L290 TraceCheckUtils]: 76: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,387 INFO L290 TraceCheckUtils]: 75: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,387 INFO L272 TraceCheckUtils]: 74: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,387 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #102#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,387 INFO L290 TraceCheckUtils]: 72: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,387 INFO L290 TraceCheckUtils]: 71: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L290 TraceCheckUtils]: 70: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L272 TraceCheckUtils]: 69: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #100#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,388 INFO L290 TraceCheckUtils]: 67: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L290 TraceCheckUtils]: 66: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L290 TraceCheckUtils]: 65: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,388 INFO L272 TraceCheckUtils]: 64: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,389 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #98#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,389 INFO L290 TraceCheckUtils]: 62: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,389 INFO L290 TraceCheckUtils]: 61: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,389 INFO L290 TraceCheckUtils]: 60: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,389 INFO L272 TraceCheckUtils]: 59: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,389 INFO L290 TraceCheckUtils]: 58: Hoare triple {92571#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {92644#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92571#(< ~counter~0 49)} is VALID [2022-04-28 05:56:07,390 INFO L290 TraceCheckUtils]: 56: Hoare triple {92644#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92644#(< ~counter~0 48)} is VALID [2022-04-28 05:56:07,391 INFO L290 TraceCheckUtils]: 55: Hoare triple {92644#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {92644#(< ~counter~0 48)} is VALID [2022-04-28 05:56:07,391 INFO L290 TraceCheckUtils]: 54: Hoare triple {92654#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92644#(< ~counter~0 48)} is VALID [2022-04-28 05:56:07,392 INFO L290 TraceCheckUtils]: 53: Hoare triple {92654#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92654#(< ~counter~0 47)} is VALID [2022-04-28 05:56:07,392 INFO L290 TraceCheckUtils]: 52: Hoare triple {92654#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {92654#(< ~counter~0 47)} is VALID [2022-04-28 05:56:07,393 INFO L290 TraceCheckUtils]: 51: Hoare triple {92664#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92654#(< ~counter~0 47)} is VALID [2022-04-28 05:56:07,393 INFO L290 TraceCheckUtils]: 50: Hoare triple {92664#(< ~counter~0 46)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92664#(< ~counter~0 46)} is VALID [2022-04-28 05:56:07,393 INFO L290 TraceCheckUtils]: 49: Hoare triple {92664#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {92664#(< ~counter~0 46)} is VALID [2022-04-28 05:56:07,393 INFO L290 TraceCheckUtils]: 48: Hoare triple {92664#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {92664#(< ~counter~0 46)} is VALID [2022-04-28 05:56:07,394 INFO L290 TraceCheckUtils]: 47: Hoare triple {92677#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92664#(< ~counter~0 46)} is VALID [2022-04-28 05:56:07,394 INFO L290 TraceCheckUtils]: 46: Hoare triple {92677#(< ~counter~0 45)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,395 INFO L290 TraceCheckUtils]: 45: Hoare triple {92677#(< ~counter~0 45)} assume !(~c~0 >= 2 * ~v~0); {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,395 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #104#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,395 INFO L290 TraceCheckUtils]: 43: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,395 INFO L290 TraceCheckUtils]: 42: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,395 INFO L290 TraceCheckUtils]: 41: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,395 INFO L272 TraceCheckUtils]: 40: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,396 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #102#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,396 INFO L290 TraceCheckUtils]: 38: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,396 INFO L290 TraceCheckUtils]: 37: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,396 INFO L290 TraceCheckUtils]: 36: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,396 INFO L272 TraceCheckUtils]: 35: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,396 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #100#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 33: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 32: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 31: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L272 TraceCheckUtils]: 30: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #98#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 28: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 27: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L290 TraceCheckUtils]: 26: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,397 INFO L272 TraceCheckUtils]: 25: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,398 INFO L290 TraceCheckUtils]: 24: Hoare triple {92677#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,398 INFO L290 TraceCheckUtils]: 23: Hoare triple {92750#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92677#(< ~counter~0 45)} is VALID [2022-04-28 05:56:07,399 INFO L290 TraceCheckUtils]: 22: Hoare triple {92750#(< ~counter~0 44)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92750#(< ~counter~0 44)} is VALID [2022-04-28 05:56:07,399 INFO L290 TraceCheckUtils]: 21: Hoare triple {92750#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {92750#(< ~counter~0 44)} is VALID [2022-04-28 05:56:07,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {92760#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92750#(< ~counter~0 44)} is VALID [2022-04-28 05:56:07,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {92760#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92760#(< ~counter~0 43)} is VALID [2022-04-28 05:56:07,400 INFO L290 TraceCheckUtils]: 18: Hoare triple {92760#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {92760#(< ~counter~0 43)} is VALID [2022-04-28 05:56:07,401 INFO L290 TraceCheckUtils]: 17: Hoare triple {92770#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92760#(< ~counter~0 43)} is VALID [2022-04-28 05:56:07,401 INFO L290 TraceCheckUtils]: 16: Hoare triple {92770#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,402 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92257#true} {92770#(< ~counter~0 42)} #96#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 14: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 13: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 12: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L272 TraceCheckUtils]: 11: Hoare triple {92770#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92257#true} {92770#(< ~counter~0 42)} #94#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 9: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 8: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:56:07,402 INFO L272 TraceCheckUtils]: 6: Hoare triple {92770#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:56:07,403 INFO L290 TraceCheckUtils]: 5: Hoare triple {92770#(< ~counter~0 42)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,403 INFO L272 TraceCheckUtils]: 4: Hoare triple {92770#(< ~counter~0 42)} call #t~ret9 := main(); {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92770#(< ~counter~0 42)} {92257#true} #108#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {92770#(< ~counter~0 42)} assume true; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92770#(< ~counter~0 42)} is VALID [2022-04-28 05:56:07,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:56:07,404 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 34 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:07,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:07,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [984708718] [2022-04-28 05:56:07,404 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:07,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [847230867] [2022-04-28 05:56:07,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [847230867] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:07,405 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:07,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:56:07,405 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:07,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [10879913] [2022-04-28 05:56:07,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [10879913] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:07,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:07,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:56:07,406 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [713279601] [2022-04-28 05:56:07,406 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:07,407 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:56:07,407 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:07,407 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:07,476 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:07,476 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:56:07,476 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:07,477 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:56:07,477 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:56:07,477 INFO L87 Difference]: Start difference. First operand 1027 states and 1375 transitions. Second operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:10,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,871 INFO L93 Difference]: Finished difference Result 1062 states and 1410 transitions. [2022-04-28 05:56:10,871 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:56:10,871 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:56:10,871 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:10,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:10,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:56:10,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:10,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:56:10,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 208 transitions. [2022-04-28 05:56:11,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:11,106 INFO L225 Difference]: With dead ends: 1062 [2022-04-28 05:56:11,107 INFO L226 Difference]: Without dead ends: 1055 [2022-04-28 05:56:11,107 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=312, Invalid=444, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:56:11,107 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 157 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:11,108 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [157 Valid, 296 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:56:11,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states. [2022-04-28 05:56:13,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1038. [2022-04-28 05:56:13,759 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:13,760 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:13,761 INFO L74 IsIncluded]: Start isIncluded. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:13,761 INFO L87 Difference]: Start difference. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:13,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:13,798 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:56:13,798 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:56:13,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:13,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:13,801 INFO L74 IsIncluded]: Start isIncluded. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:56:13,801 INFO L87 Difference]: Start difference. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:56:13,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:13,836 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:56:13,836 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:56:13,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:13,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:13,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:13,837 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:13,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:13,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1038 states to 1038 states and 1386 transitions. [2022-04-28 05:56:13,893 INFO L78 Accepts]: Start accepts. Automaton has 1038 states and 1386 transitions. Word has length 91 [2022-04-28 05:56:13,893 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:13,893 INFO L495 AbstractCegarLoop]: Abstraction has 1038 states and 1386 transitions. [2022-04-28 05:56:13,894 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:13,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1038 states and 1386 transitions. [2022-04-28 05:56:16,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1386 edges. 1386 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:16,625 INFO L276 IsEmpty]: Start isEmpty. Operand 1038 states and 1386 transitions. [2022-04-28 05:56:16,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-28 05:56:16,625 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:16,625 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:56:16,642 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:16,827 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:16,827 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:16,827 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:16,828 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 1 times [2022-04-28 05:56:16,828 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:16,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1712003639] [2022-04-28 05:56:16,828 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:16,828 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 2 times [2022-04-28 05:56:16,828 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:16,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1965996020] [2022-04-28 05:56:16,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:16,828 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:16,841 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:16,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1030543] [2022-04-28 05:56:16,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:16,842 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:16,842 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:16,843 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:16,843 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-28 05:56:16,897 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:16,897 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:16,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:56:16,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:16,926 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:17,339 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:56:17,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99154#(<= ~counter~0 0)} {99146#true} #108#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {99154#(<= ~counter~0 0)} call #t~ret9 := main(); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,342 INFO L290 TraceCheckUtils]: 5: Hoare triple {99154#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,342 INFO L272 TraceCheckUtils]: 6: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,343 INFO L290 TraceCheckUtils]: 9: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #94#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,343 INFO L272 TraceCheckUtils]: 11: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,344 INFO L290 TraceCheckUtils]: 12: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,344 INFO L290 TraceCheckUtils]: 13: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,345 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #96#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,345 INFO L290 TraceCheckUtils]: 16: Hoare triple {99154#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:17,346 INFO L290 TraceCheckUtils]: 17: Hoare triple {99154#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:17,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {99203#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:17,347 INFO L290 TraceCheckUtils]: 19: Hoare triple {99203#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:17,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {99203#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:17,348 INFO L290 TraceCheckUtils]: 21: Hoare triple {99213#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:17,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {99213#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:17,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {99213#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:17,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {99213#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:17,350 INFO L290 TraceCheckUtils]: 25: Hoare triple {99226#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:17,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {99226#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:17,351 INFO L290 TraceCheckUtils]: 27: Hoare triple {99226#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:17,351 INFO L290 TraceCheckUtils]: 28: Hoare triple {99236#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:17,351 INFO L290 TraceCheckUtils]: 29: Hoare triple {99236#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:17,352 INFO L290 TraceCheckUtils]: 30: Hoare triple {99236#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,352 INFO L290 TraceCheckUtils]: 31: Hoare triple {99246#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,353 INFO L272 TraceCheckUtils]: 32: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,353 INFO L290 TraceCheckUtils]: 33: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,353 INFO L290 TraceCheckUtils]: 34: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,353 INFO L290 TraceCheckUtils]: 35: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,354 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #98#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,355 INFO L272 TraceCheckUtils]: 37: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,355 INFO L290 TraceCheckUtils]: 38: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,355 INFO L290 TraceCheckUtils]: 39: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,355 INFO L290 TraceCheckUtils]: 40: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,356 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #100#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,356 INFO L272 TraceCheckUtils]: 42: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,357 INFO L290 TraceCheckUtils]: 43: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,357 INFO L290 TraceCheckUtils]: 44: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,357 INFO L290 TraceCheckUtils]: 45: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,358 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #102#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,358 INFO L272 TraceCheckUtils]: 47: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,359 INFO L290 TraceCheckUtils]: 49: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,359 INFO L290 TraceCheckUtils]: 50: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,359 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #104#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,360 INFO L290 TraceCheckUtils]: 52: Hoare triple {99246#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:17,360 INFO L290 TraceCheckUtils]: 53: Hoare triple {99246#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,361 INFO L290 TraceCheckUtils]: 54: Hoare triple {99316#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,361 INFO L272 TraceCheckUtils]: 55: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,361 INFO L290 TraceCheckUtils]: 56: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,362 INFO L290 TraceCheckUtils]: 57: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,362 INFO L290 TraceCheckUtils]: 58: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,362 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #98#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,363 INFO L272 TraceCheckUtils]: 60: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,363 INFO L290 TraceCheckUtils]: 61: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,363 INFO L290 TraceCheckUtils]: 62: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,364 INFO L290 TraceCheckUtils]: 63: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,364 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #100#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,365 INFO L272 TraceCheckUtils]: 65: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,365 INFO L290 TraceCheckUtils]: 66: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,365 INFO L290 TraceCheckUtils]: 67: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,365 INFO L290 TraceCheckUtils]: 68: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,366 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #102#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,366 INFO L272 TraceCheckUtils]: 70: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,367 INFO L290 TraceCheckUtils]: 71: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,367 INFO L290 TraceCheckUtils]: 72: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,367 INFO L290 TraceCheckUtils]: 73: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,368 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #104#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,368 INFO L290 TraceCheckUtils]: 75: Hoare triple {99316#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,368 INFO L290 TraceCheckUtils]: 76: Hoare triple {99316#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:17,369 INFO L290 TraceCheckUtils]: 77: Hoare triple {99316#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:17,369 INFO L290 TraceCheckUtils]: 78: Hoare triple {99389#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:17,369 INFO L290 TraceCheckUtils]: 79: Hoare triple {99389#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:17,370 INFO L290 TraceCheckUtils]: 80: Hoare triple {99389#(<= ~counter~0 7)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:17,370 INFO L290 TraceCheckUtils]: 81: Hoare triple {99389#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:17,371 INFO L290 TraceCheckUtils]: 82: Hoare triple {99402#(<= ~counter~0 8)} assume !!(#t~post6 < 50);havoc #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:17,371 INFO L290 TraceCheckUtils]: 83: Hoare triple {99402#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:17,373 INFO L290 TraceCheckUtils]: 84: Hoare triple {99402#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99412#(<= |main_#t~post7| 8)} is VALID [2022-04-28 05:56:17,373 INFO L290 TraceCheckUtils]: 85: Hoare triple {99412#(<= |main_#t~post7| 8)} assume !(#t~post7 < 50);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:56:17,373 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 50);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:56:17,374 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 96 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:17,374 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:17,851 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:56:17,851 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 50);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 85: Hoare triple {99458#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:56:17,852 INFO L290 TraceCheckUtils]: 84: Hoare triple {99462#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99458#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:56:17,853 INFO L290 TraceCheckUtils]: 83: Hoare triple {99462#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99462#(< ~counter~0 50)} is VALID [2022-04-28 05:56:17,853 INFO L290 TraceCheckUtils]: 82: Hoare triple {99462#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {99462#(< ~counter~0 50)} is VALID [2022-04-28 05:56:17,854 INFO L290 TraceCheckUtils]: 81: Hoare triple {99472#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99462#(< ~counter~0 50)} is VALID [2022-04-28 05:56:17,855 INFO L290 TraceCheckUtils]: 80: Hoare triple {99472#(< ~counter~0 49)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99472#(< ~counter~0 49)} is VALID [2022-04-28 05:56:17,855 INFO L290 TraceCheckUtils]: 79: Hoare triple {99472#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {99472#(< ~counter~0 49)} is VALID [2022-04-28 05:56:17,855 INFO L290 TraceCheckUtils]: 78: Hoare triple {99472#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {99472#(< ~counter~0 49)} is VALID [2022-04-28 05:56:17,856 INFO L290 TraceCheckUtils]: 77: Hoare triple {99485#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99472#(< ~counter~0 49)} is VALID [2022-04-28 05:56:17,856 INFO L290 TraceCheckUtils]: 76: Hoare triple {99485#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,857 INFO L290 TraceCheckUtils]: 75: Hoare triple {99485#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,857 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #104#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,857 INFO L290 TraceCheckUtils]: 73: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,857 INFO L290 TraceCheckUtils]: 72: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,857 INFO L290 TraceCheckUtils]: 71: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,857 INFO L272 TraceCheckUtils]: 70: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,858 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #102#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,858 INFO L290 TraceCheckUtils]: 68: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,858 INFO L290 TraceCheckUtils]: 67: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,858 INFO L290 TraceCheckUtils]: 66: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,858 INFO L272 TraceCheckUtils]: 65: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,859 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #100#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,859 INFO L290 TraceCheckUtils]: 63: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,859 INFO L290 TraceCheckUtils]: 62: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,859 INFO L290 TraceCheckUtils]: 61: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,859 INFO L272 TraceCheckUtils]: 60: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,859 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #98#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,859 INFO L290 TraceCheckUtils]: 58: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,860 INFO L290 TraceCheckUtils]: 57: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,860 INFO L290 TraceCheckUtils]: 56: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,860 INFO L272 TraceCheckUtils]: 55: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,860 INFO L290 TraceCheckUtils]: 54: Hoare triple {99485#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,861 INFO L290 TraceCheckUtils]: 53: Hoare triple {99558#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99485#(< ~counter~0 48)} is VALID [2022-04-28 05:56:17,861 INFO L290 TraceCheckUtils]: 52: Hoare triple {99558#(< ~counter~0 47)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,861 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #104#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,861 INFO L290 TraceCheckUtils]: 50: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,861 INFO L290 TraceCheckUtils]: 49: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L290 TraceCheckUtils]: 48: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L272 TraceCheckUtils]: 47: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #102#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,862 INFO L290 TraceCheckUtils]: 45: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L290 TraceCheckUtils]: 44: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L290 TraceCheckUtils]: 43: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,862 INFO L272 TraceCheckUtils]: 42: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,863 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #100#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,863 INFO L290 TraceCheckUtils]: 40: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,863 INFO L290 TraceCheckUtils]: 39: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,863 INFO L290 TraceCheckUtils]: 38: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,863 INFO L272 TraceCheckUtils]: 37: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,864 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #98#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,864 INFO L290 TraceCheckUtils]: 35: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,864 INFO L290 TraceCheckUtils]: 34: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,864 INFO L290 TraceCheckUtils]: 33: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,864 INFO L272 TraceCheckUtils]: 32: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,864 INFO L290 TraceCheckUtils]: 31: Hoare triple {99558#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,865 INFO L290 TraceCheckUtils]: 30: Hoare triple {99628#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99558#(< ~counter~0 47)} is VALID [2022-04-28 05:56:17,865 INFO L290 TraceCheckUtils]: 29: Hoare triple {99628#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99628#(< ~counter~0 46)} is VALID [2022-04-28 05:56:17,865 INFO L290 TraceCheckUtils]: 28: Hoare triple {99628#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {99628#(< ~counter~0 46)} is VALID [2022-04-28 05:56:17,866 INFO L290 TraceCheckUtils]: 27: Hoare triple {99638#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99628#(< ~counter~0 46)} is VALID [2022-04-28 05:56:17,866 INFO L290 TraceCheckUtils]: 26: Hoare triple {99638#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99638#(< ~counter~0 45)} is VALID [2022-04-28 05:56:17,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {99638#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {99638#(< ~counter~0 45)} is VALID [2022-04-28 05:56:17,868 INFO L290 TraceCheckUtils]: 24: Hoare triple {99648#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99638#(< ~counter~0 45)} is VALID [2022-04-28 05:56:17,868 INFO L290 TraceCheckUtils]: 23: Hoare triple {99648#(< ~counter~0 44)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99648#(< ~counter~0 44)} is VALID [2022-04-28 05:56:17,868 INFO L290 TraceCheckUtils]: 22: Hoare triple {99648#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {99648#(< ~counter~0 44)} is VALID [2022-04-28 05:56:17,868 INFO L290 TraceCheckUtils]: 21: Hoare triple {99648#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {99648#(< ~counter~0 44)} is VALID [2022-04-28 05:56:17,869 INFO L290 TraceCheckUtils]: 20: Hoare triple {99661#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99648#(< ~counter~0 44)} is VALID [2022-04-28 05:56:17,869 INFO L290 TraceCheckUtils]: 19: Hoare triple {99661#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99661#(< ~counter~0 43)} is VALID [2022-04-28 05:56:17,870 INFO L290 TraceCheckUtils]: 18: Hoare triple {99661#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {99661#(< ~counter~0 43)} is VALID [2022-04-28 05:56:17,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {99671#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99661#(< ~counter~0 43)} is VALID [2022-04-28 05:56:17,871 INFO L290 TraceCheckUtils]: 16: Hoare triple {99671#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,872 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99146#true} {99671#(< ~counter~0 42)} #96#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,872 INFO L290 TraceCheckUtils]: 14: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,872 INFO L272 TraceCheckUtils]: 11: Hoare triple {99671#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99146#true} {99671#(< ~counter~0 42)} #94#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,873 INFO L290 TraceCheckUtils]: 9: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:56:17,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:56:17,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:56:17,873 INFO L272 TraceCheckUtils]: 6: Hoare triple {99671#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:56:17,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {99671#(< ~counter~0 42)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,874 INFO L272 TraceCheckUtils]: 4: Hoare triple {99671#(< ~counter~0 42)} call #t~ret9 := main(); {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,874 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99671#(< ~counter~0 42)} {99146#true} #108#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,874 INFO L290 TraceCheckUtils]: 2: Hoare triple {99671#(< ~counter~0 42)} assume true; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99671#(< ~counter~0 42)} is VALID [2022-04-28 05:56:17,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:56:17,876 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:17,876 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:17,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1965996020] [2022-04-28 05:56:17,876 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:17,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1030543] [2022-04-28 05:56:17,876 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1030543] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:17,876 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:17,876 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:56:17,876 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:17,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1712003639] [2022-04-28 05:56:17,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1712003639] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:17,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:17,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:56:17,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1995730016] [2022-04-28 05:56:17,877 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:17,877 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:56:17,877 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:17,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:17,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:17,959 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:56:17,959 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:17,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:56:17,959 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:56:17,959 INFO L87 Difference]: Start difference. First operand 1038 states and 1386 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:21,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:21,452 INFO L93 Difference]: Finished difference Result 1382 states and 1902 transitions. [2022-04-28 05:56:21,452 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:56:21,452 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:56:21,452 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:21,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:21,454 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:56:21,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:21,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:56:21,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 233 transitions. [2022-04-28 05:56:21,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:21,712 INFO L225 Difference]: With dead ends: 1382 [2022-04-28 05:56:21,712 INFO L226 Difference]: Without dead ends: 1062 [2022-04-28 05:56:21,714 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=310, Invalid=446, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:56:21,714 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 140 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:21,714 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [140 Valid, 310 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:56:21,715 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1062 states. [2022-04-28 05:56:24,451 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1062 to 1058. [2022-04-28 05:56:24,452 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:24,453 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:24,453 INFO L74 IsIncluded]: Start isIncluded. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:24,454 INFO L87 Difference]: Start difference. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:24,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:24,486 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:56:24,486 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:56:24,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:24,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:24,488 INFO L74 IsIncluded]: Start isIncluded. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:56:24,489 INFO L87 Difference]: Start difference. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:56:24,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:24,521 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:56:24,521 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:56:24,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:24,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:24,523 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:24,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:24,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:56:24,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1405 transitions. [2022-04-28 05:56:24,580 INFO L78 Accepts]: Start accepts. Automaton has 1058 states and 1405 transitions. Word has length 93 [2022-04-28 05:56:24,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:24,580 INFO L495 AbstractCegarLoop]: Abstraction has 1058 states and 1405 transitions. [2022-04-28 05:56:24,580 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:24,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1058 states and 1405 transitions. [2022-04-28 05:56:27,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1405 edges. 1405 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:27,432 INFO L276 IsEmpty]: Start isEmpty. Operand 1058 states and 1405 transitions. [2022-04-28 05:56:27,433 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 05:56:27,433 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:27,433 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:27,449 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Ended with exit code 0 [2022-04-28 05:56:27,635 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:27,635 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:27,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:27,636 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 5 times [2022-04-28 05:56:27,636 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:27,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [228897605] [2022-04-28 05:56:27,636 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:27,636 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 6 times [2022-04-28 05:56:27,636 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:27,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1154257976] [2022-04-28 05:56:27,636 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:27,636 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:27,658 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:27,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [808533994] [2022-04-28 05:56:27,658 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:27,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:27,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:27,659 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:27,686 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-28 05:56:27,834 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:56:27,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:27,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:56:27,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:27,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:28,335 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:56:28,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,336 INFO L290 TraceCheckUtils]: 2: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106749#(<= ~counter~0 0)} {106741#true} #108#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,336 INFO L272 TraceCheckUtils]: 4: Hoare triple {106749#(<= ~counter~0 0)} call #t~ret9 := main(); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,337 INFO L290 TraceCheckUtils]: 5: Hoare triple {106749#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,337 INFO L272 TraceCheckUtils]: 6: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,338 INFO L290 TraceCheckUtils]: 8: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #94#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,339 INFO L272 TraceCheckUtils]: 11: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,339 INFO L290 TraceCheckUtils]: 12: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,339 INFO L290 TraceCheckUtils]: 14: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,340 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #96#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,340 INFO L290 TraceCheckUtils]: 16: Hoare triple {106749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:28,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {106749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:28,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {106798#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:28,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {106798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:28,343 INFO L290 TraceCheckUtils]: 20: Hoare triple {106798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:28,343 INFO L290 TraceCheckUtils]: 21: Hoare triple {106808#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:28,344 INFO L290 TraceCheckUtils]: 22: Hoare triple {106808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:28,344 INFO L290 TraceCheckUtils]: 23: Hoare triple {106808#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:28,345 INFO L290 TraceCheckUtils]: 24: Hoare triple {106808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:28,345 INFO L290 TraceCheckUtils]: 25: Hoare triple {106821#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:28,345 INFO L290 TraceCheckUtils]: 26: Hoare triple {106821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:28,346 INFO L290 TraceCheckUtils]: 27: Hoare triple {106821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:28,346 INFO L290 TraceCheckUtils]: 28: Hoare triple {106831#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:28,347 INFO L290 TraceCheckUtils]: 29: Hoare triple {106831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:28,347 INFO L290 TraceCheckUtils]: 30: Hoare triple {106831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,348 INFO L290 TraceCheckUtils]: 31: Hoare triple {106841#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,348 INFO L272 TraceCheckUtils]: 32: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,348 INFO L290 TraceCheckUtils]: 33: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,349 INFO L290 TraceCheckUtils]: 34: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,349 INFO L290 TraceCheckUtils]: 35: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,349 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #98#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,350 INFO L272 TraceCheckUtils]: 37: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,350 INFO L290 TraceCheckUtils]: 38: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,350 INFO L290 TraceCheckUtils]: 39: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,351 INFO L290 TraceCheckUtils]: 40: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,351 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #100#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,352 INFO L272 TraceCheckUtils]: 42: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,352 INFO L290 TraceCheckUtils]: 43: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,352 INFO L290 TraceCheckUtils]: 44: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,353 INFO L290 TraceCheckUtils]: 45: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,353 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #102#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,354 INFO L272 TraceCheckUtils]: 47: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,354 INFO L290 TraceCheckUtils]: 48: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,354 INFO L290 TraceCheckUtils]: 49: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,354 INFO L290 TraceCheckUtils]: 50: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,355 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #104#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,355 INFO L290 TraceCheckUtils]: 52: Hoare triple {106841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {106841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:28,356 INFO L290 TraceCheckUtils]: 54: Hoare triple {106841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:28,356 INFO L290 TraceCheckUtils]: 55: Hoare triple {106914#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:28,357 INFO L290 TraceCheckUtils]: 56: Hoare triple {106914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:28,357 INFO L290 TraceCheckUtils]: 57: Hoare triple {106914#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:28,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {106914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:28,358 INFO L290 TraceCheckUtils]: 59: Hoare triple {106927#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:28,358 INFO L290 TraceCheckUtils]: 60: Hoare triple {106927#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:28,359 INFO L290 TraceCheckUtils]: 61: Hoare triple {106927#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:28,359 INFO L290 TraceCheckUtils]: 62: Hoare triple {106937#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:28,360 INFO L290 TraceCheckUtils]: 63: Hoare triple {106937#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:28,360 INFO L290 TraceCheckUtils]: 64: Hoare triple {106937#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,361 INFO L290 TraceCheckUtils]: 65: Hoare triple {106947#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,361 INFO L272 TraceCheckUtils]: 66: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,361 INFO L290 TraceCheckUtils]: 67: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,362 INFO L290 TraceCheckUtils]: 68: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,362 INFO L290 TraceCheckUtils]: 69: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,362 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #98#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,363 INFO L272 TraceCheckUtils]: 71: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,363 INFO L290 TraceCheckUtils]: 72: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,364 INFO L290 TraceCheckUtils]: 73: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,364 INFO L290 TraceCheckUtils]: 74: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,364 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #100#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,365 INFO L272 TraceCheckUtils]: 76: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,365 INFO L290 TraceCheckUtils]: 77: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,365 INFO L290 TraceCheckUtils]: 78: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,366 INFO L290 TraceCheckUtils]: 79: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,366 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #102#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,367 INFO L272 TraceCheckUtils]: 81: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,367 INFO L290 TraceCheckUtils]: 82: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,367 INFO L290 TraceCheckUtils]: 83: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,367 INFO L290 TraceCheckUtils]: 84: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,368 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #104#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,368 INFO L290 TraceCheckUtils]: 86: Hoare triple {106947#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,368 INFO L290 TraceCheckUtils]: 87: Hoare triple {106947#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 88: Hoare triple {106947#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107020#(<= |main_#t~post7| 9)} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 89: Hoare triple {107020#(<= |main_#t~post7| 9)} assume !(#t~post7 < 50);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 50);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:56:28,369 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:56:28,370 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:28,370 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:28,902 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 50);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 89: Hoare triple {107066#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:56:28,903 INFO L290 TraceCheckUtils]: 88: Hoare triple {107070#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107066#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:56:28,904 INFO L290 TraceCheckUtils]: 87: Hoare triple {107070#(< ~counter~0 50)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,904 INFO L290 TraceCheckUtils]: 86: Hoare triple {107070#(< ~counter~0 50)} assume !(~c~0 >= 2 * ~v~0); {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,904 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #104#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,905 INFO L290 TraceCheckUtils]: 84: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,905 INFO L290 TraceCheckUtils]: 83: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,905 INFO L290 TraceCheckUtils]: 82: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,905 INFO L272 TraceCheckUtils]: 81: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #102#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 79: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 78: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 77: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L272 TraceCheckUtils]: 76: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #100#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 74: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 73: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,906 INFO L290 TraceCheckUtils]: 72: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,907 INFO L272 TraceCheckUtils]: 71: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,907 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #98#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,907 INFO L290 TraceCheckUtils]: 69: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,907 INFO L290 TraceCheckUtils]: 68: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,907 INFO L290 TraceCheckUtils]: 67: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,907 INFO L272 TraceCheckUtils]: 66: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,908 INFO L290 TraceCheckUtils]: 65: Hoare triple {107070#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,909 INFO L290 TraceCheckUtils]: 64: Hoare triple {107143#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107070#(< ~counter~0 50)} is VALID [2022-04-28 05:56:28,909 INFO L290 TraceCheckUtils]: 63: Hoare triple {107143#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107143#(< ~counter~0 49)} is VALID [2022-04-28 05:56:28,910 INFO L290 TraceCheckUtils]: 62: Hoare triple {107143#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {107143#(< ~counter~0 49)} is VALID [2022-04-28 05:56:28,911 INFO L290 TraceCheckUtils]: 61: Hoare triple {107153#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107143#(< ~counter~0 49)} is VALID [2022-04-28 05:56:28,911 INFO L290 TraceCheckUtils]: 60: Hoare triple {107153#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107153#(< ~counter~0 48)} is VALID [2022-04-28 05:56:28,911 INFO L290 TraceCheckUtils]: 59: Hoare triple {107153#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {107153#(< ~counter~0 48)} is VALID [2022-04-28 05:56:28,912 INFO L290 TraceCheckUtils]: 58: Hoare triple {107163#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107153#(< ~counter~0 48)} is VALID [2022-04-28 05:56:28,912 INFO L290 TraceCheckUtils]: 57: Hoare triple {107163#(< ~counter~0 47)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {107163#(< ~counter~0 47)} is VALID [2022-04-28 05:56:28,912 INFO L290 TraceCheckUtils]: 56: Hoare triple {107163#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {107163#(< ~counter~0 47)} is VALID [2022-04-28 05:56:28,913 INFO L290 TraceCheckUtils]: 55: Hoare triple {107163#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {107163#(< ~counter~0 47)} is VALID [2022-04-28 05:56:28,913 INFO L290 TraceCheckUtils]: 54: Hoare triple {107176#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107163#(< ~counter~0 47)} is VALID [2022-04-28 05:56:28,914 INFO L290 TraceCheckUtils]: 53: Hoare triple {107176#(< ~counter~0 46)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,914 INFO L290 TraceCheckUtils]: 52: Hoare triple {107176#(< ~counter~0 46)} assume !(~c~0 >= 2 * ~v~0); {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,914 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #104#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,914 INFO L290 TraceCheckUtils]: 50: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,914 INFO L290 TraceCheckUtils]: 49: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,914 INFO L290 TraceCheckUtils]: 48: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,915 INFO L272 TraceCheckUtils]: 47: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,915 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #102#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,915 INFO L290 TraceCheckUtils]: 45: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,915 INFO L290 TraceCheckUtils]: 44: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,915 INFO L290 TraceCheckUtils]: 43: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,915 INFO L272 TraceCheckUtils]: 42: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,916 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #100#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,916 INFO L290 TraceCheckUtils]: 40: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,916 INFO L290 TraceCheckUtils]: 39: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,916 INFO L290 TraceCheckUtils]: 38: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,916 INFO L272 TraceCheckUtils]: 37: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,916 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #98#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,917 INFO L272 TraceCheckUtils]: 32: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,917 INFO L290 TraceCheckUtils]: 31: Hoare triple {107176#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,918 INFO L290 TraceCheckUtils]: 30: Hoare triple {107249#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107176#(< ~counter~0 46)} is VALID [2022-04-28 05:56:28,918 INFO L290 TraceCheckUtils]: 29: Hoare triple {107249#(< ~counter~0 45)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107249#(< ~counter~0 45)} is VALID [2022-04-28 05:56:28,918 INFO L290 TraceCheckUtils]: 28: Hoare triple {107249#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {107249#(< ~counter~0 45)} is VALID [2022-04-28 05:56:28,919 INFO L290 TraceCheckUtils]: 27: Hoare triple {107259#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107249#(< ~counter~0 45)} is VALID [2022-04-28 05:56:28,919 INFO L290 TraceCheckUtils]: 26: Hoare triple {107259#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107259#(< ~counter~0 44)} is VALID [2022-04-28 05:56:28,920 INFO L290 TraceCheckUtils]: 25: Hoare triple {107259#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {107259#(< ~counter~0 44)} is VALID [2022-04-28 05:56:28,920 INFO L290 TraceCheckUtils]: 24: Hoare triple {107269#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107259#(< ~counter~0 44)} is VALID [2022-04-28 05:56:28,921 INFO L290 TraceCheckUtils]: 23: Hoare triple {107269#(< ~counter~0 43)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {107269#(< ~counter~0 43)} is VALID [2022-04-28 05:56:28,921 INFO L290 TraceCheckUtils]: 22: Hoare triple {107269#(< ~counter~0 43)} assume !(~c~0 >= ~b~0); {107269#(< ~counter~0 43)} is VALID [2022-04-28 05:56:28,921 INFO L290 TraceCheckUtils]: 21: Hoare triple {107269#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {107269#(< ~counter~0 43)} is VALID [2022-04-28 05:56:28,922 INFO L290 TraceCheckUtils]: 20: Hoare triple {107282#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107269#(< ~counter~0 43)} is VALID [2022-04-28 05:56:28,922 INFO L290 TraceCheckUtils]: 19: Hoare triple {107282#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107282#(< ~counter~0 42)} is VALID [2022-04-28 05:56:28,922 INFO L290 TraceCheckUtils]: 18: Hoare triple {107282#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {107282#(< ~counter~0 42)} is VALID [2022-04-28 05:56:28,923 INFO L290 TraceCheckUtils]: 17: Hoare triple {107292#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107282#(< ~counter~0 42)} is VALID [2022-04-28 05:56:28,923 INFO L290 TraceCheckUtils]: 16: Hoare triple {107292#(< ~counter~0 41)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,924 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106741#true} {107292#(< ~counter~0 41)} #96#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,924 INFO L290 TraceCheckUtils]: 14: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,924 INFO L290 TraceCheckUtils]: 13: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,924 INFO L290 TraceCheckUtils]: 12: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,924 INFO L272 TraceCheckUtils]: 11: Hoare triple {107292#(< ~counter~0 41)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,924 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106741#true} {107292#(< ~counter~0 41)} #94#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,925 INFO L290 TraceCheckUtils]: 9: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:56:28,925 INFO L290 TraceCheckUtils]: 8: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:56:28,925 INFO L290 TraceCheckUtils]: 7: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:56:28,925 INFO L272 TraceCheckUtils]: 6: Hoare triple {107292#(< ~counter~0 41)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:56:28,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {107292#(< ~counter~0 41)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,925 INFO L272 TraceCheckUtils]: 4: Hoare triple {107292#(< ~counter~0 41)} call #t~ret9 := main(); {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,926 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {107292#(< ~counter~0 41)} {106741#true} #108#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,926 INFO L290 TraceCheckUtils]: 2: Hoare triple {107292#(< ~counter~0 41)} assume true; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {107292#(< ~counter~0 41)} is VALID [2022-04-28 05:56:28,926 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:56:28,927 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:28,927 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:28,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1154257976] [2022-04-28 05:56:28,927 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:28,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [808533994] [2022-04-28 05:56:28,927 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [808533994] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:28,927 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:28,927 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:56:28,927 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:28,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [228897605] [2022-04-28 05:56:28,927 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [228897605] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:28,927 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:28,927 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:56:28,927 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [26436196] [2022-04-28 05:56:28,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:28,928 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:56:28,928 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:28,928 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:28,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:28,994 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:56:28,994 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:28,994 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:56:28,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:56:28,994 INFO L87 Difference]: Start difference. First operand 1058 states and 1405 transitions. Second operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:32,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:32,864 INFO L93 Difference]: Finished difference Result 1539 states and 2090 transitions. [2022-04-28 05:56:32,864 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:56:32,864 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:56:32,864 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:32,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:32,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:32,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:32,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:32,867 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:56:33,098 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:33,161 INFO L225 Difference]: With dead ends: 1539 [2022-04-28 05:56:33,161 INFO L226 Difference]: Without dead ends: 1219 [2022-04-28 05:56:33,162 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=384, Invalid=546, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:56:33,162 INFO L413 NwaCegarLoop]: 73 mSDtfsCounter, 170 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 69 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 69 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:33,162 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 328 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [69 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:56:33,163 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1219 states. [2022-04-28 05:56:36,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1219 to 1164. [2022-04-28 05:56:36,213 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:36,215 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:56:36,216 INFO L74 IsIncluded]: Start isIncluded. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:56:36,217 INFO L87 Difference]: Start difference. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:56:36,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:36,293 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:56:36,293 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:56:36,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:36,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:36,296 INFO L74 IsIncluded]: Start isIncluded. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:56:36,297 INFO L87 Difference]: Start difference. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:56:36,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:36,337 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:56:36,337 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:56:36,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:36,338 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:36,338 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:36,338 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:36,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:56:36,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1164 states to 1164 states and 1539 transitions. [2022-04-28 05:56:36,395 INFO L78 Accepts]: Start accepts. Automaton has 1164 states and 1539 transitions. Word has length 97 [2022-04-28 05:56:36,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:36,395 INFO L495 AbstractCegarLoop]: Abstraction has 1164 states and 1539 transitions. [2022-04-28 05:56:36,395 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:36,395 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1164 states and 1539 transitions. [2022-04-28 05:56:39,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1539 edges. 1539 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:39,593 INFO L276 IsEmpty]: Start isEmpty. Operand 1164 states and 1539 transitions. [2022-04-28 05:56:39,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-28 05:56:39,594 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:39,594 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:39,615 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:39,803 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-28 05:56:39,803 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:39,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:39,804 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 7 times [2022-04-28 05:56:39,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:39,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [623779307] [2022-04-28 05:56:39,804 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:39,804 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 8 times [2022-04-28 05:56:39,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:39,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2020139183] [2022-04-28 05:56:39,804 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:39,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:39,815 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:39,815 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [356203791] [2022-04-28 05:56:39,815 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:39,815 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:39,815 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:39,816 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:39,819 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 05:56:39,873 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:39,873 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:39,874 INFO L263 TraceCheckSpWp]: Trace formula consists of 301 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:56:39,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:39,894 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:40,354 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:56:40,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,355 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115212#(<= ~counter~0 0)} {115204#true} #108#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,355 INFO L272 TraceCheckUtils]: 4: Hoare triple {115212#(<= ~counter~0 0)} call #t~ret9 := main(); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,355 INFO L290 TraceCheckUtils]: 5: Hoare triple {115212#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,356 INFO L272 TraceCheckUtils]: 6: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,356 INFO L290 TraceCheckUtils]: 7: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,356 INFO L290 TraceCheckUtils]: 8: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,356 INFO L290 TraceCheckUtils]: 9: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,357 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #94#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,357 INFO L272 TraceCheckUtils]: 11: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,357 INFO L290 TraceCheckUtils]: 12: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,358 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #96#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,358 INFO L290 TraceCheckUtils]: 16: Hoare triple {115212#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:40,360 INFO L290 TraceCheckUtils]: 17: Hoare triple {115212#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:40,360 INFO L290 TraceCheckUtils]: 18: Hoare triple {115261#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:40,361 INFO L290 TraceCheckUtils]: 19: Hoare triple {115261#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:40,361 INFO L290 TraceCheckUtils]: 20: Hoare triple {115261#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:40,362 INFO L290 TraceCheckUtils]: 21: Hoare triple {115271#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:40,362 INFO L290 TraceCheckUtils]: 22: Hoare triple {115271#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:40,362 INFO L290 TraceCheckUtils]: 23: Hoare triple {115271#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:40,363 INFO L290 TraceCheckUtils]: 24: Hoare triple {115271#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:40,363 INFO L290 TraceCheckUtils]: 25: Hoare triple {115284#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:40,363 INFO L290 TraceCheckUtils]: 26: Hoare triple {115284#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:40,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {115284#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:40,364 INFO L290 TraceCheckUtils]: 28: Hoare triple {115294#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:40,365 INFO L290 TraceCheckUtils]: 29: Hoare triple {115294#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:40,365 INFO L290 TraceCheckUtils]: 30: Hoare triple {115294#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,366 INFO L290 TraceCheckUtils]: 31: Hoare triple {115304#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,366 INFO L272 TraceCheckUtils]: 32: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,366 INFO L290 TraceCheckUtils]: 33: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,367 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #98#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,368 INFO L272 TraceCheckUtils]: 37: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,368 INFO L290 TraceCheckUtils]: 38: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,368 INFO L290 TraceCheckUtils]: 39: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,369 INFO L290 TraceCheckUtils]: 40: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,369 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #100#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,370 INFO L272 TraceCheckUtils]: 42: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,370 INFO L290 TraceCheckUtils]: 43: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,370 INFO L290 TraceCheckUtils]: 44: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,370 INFO L290 TraceCheckUtils]: 45: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,371 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #102#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,371 INFO L272 TraceCheckUtils]: 47: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,372 INFO L290 TraceCheckUtils]: 48: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,372 INFO L290 TraceCheckUtils]: 49: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,372 INFO L290 TraceCheckUtils]: 50: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,372 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #104#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,373 INFO L290 TraceCheckUtils]: 52: Hoare triple {115304#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,373 INFO L290 TraceCheckUtils]: 53: Hoare triple {115304#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:40,374 INFO L290 TraceCheckUtils]: 54: Hoare triple {115304#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:40,374 INFO L290 TraceCheckUtils]: 55: Hoare triple {115377#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:40,374 INFO L290 TraceCheckUtils]: 56: Hoare triple {115377#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:40,374 INFO L290 TraceCheckUtils]: 57: Hoare triple {115377#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:40,375 INFO L290 TraceCheckUtils]: 58: Hoare triple {115377#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:40,376 INFO L290 TraceCheckUtils]: 59: Hoare triple {115390#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:40,376 INFO L290 TraceCheckUtils]: 60: Hoare triple {115390#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:40,377 INFO L290 TraceCheckUtils]: 61: Hoare triple {115390#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:40,377 INFO L290 TraceCheckUtils]: 62: Hoare triple {115400#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:40,377 INFO L290 TraceCheckUtils]: 63: Hoare triple {115400#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:40,378 INFO L290 TraceCheckUtils]: 64: Hoare triple {115400#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,378 INFO L290 TraceCheckUtils]: 65: Hoare triple {115410#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,379 INFO L272 TraceCheckUtils]: 66: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,379 INFO L290 TraceCheckUtils]: 67: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,379 INFO L290 TraceCheckUtils]: 68: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,379 INFO L290 TraceCheckUtils]: 69: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,380 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #98#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,380 INFO L272 TraceCheckUtils]: 71: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,381 INFO L290 TraceCheckUtils]: 72: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,381 INFO L290 TraceCheckUtils]: 73: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,381 INFO L290 TraceCheckUtils]: 74: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,382 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #100#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,382 INFO L272 TraceCheckUtils]: 76: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,382 INFO L290 TraceCheckUtils]: 77: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,383 INFO L290 TraceCheckUtils]: 78: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,383 INFO L290 TraceCheckUtils]: 79: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,383 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #102#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,384 INFO L272 TraceCheckUtils]: 81: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,391 INFO L290 TraceCheckUtils]: 82: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,391 INFO L290 TraceCheckUtils]: 83: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,392 INFO L290 TraceCheckUtils]: 84: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,392 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #104#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,393 INFO L290 TraceCheckUtils]: 86: Hoare triple {115410#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,393 INFO L290 TraceCheckUtils]: 87: Hoare triple {115410#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:40,394 INFO L290 TraceCheckUtils]: 88: Hoare triple {115410#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:40,395 INFO L290 TraceCheckUtils]: 89: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:40,395 INFO L290 TraceCheckUtils]: 90: Hoare triple {115483#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:40,395 INFO L290 TraceCheckUtils]: 91: Hoare triple {115483#(<= ~counter~0 10)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:40,396 INFO L290 TraceCheckUtils]: 92: Hoare triple {115483#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115496#(<= |main_#t~post6| 10)} is VALID [2022-04-28 05:56:40,396 INFO L290 TraceCheckUtils]: 93: Hoare triple {115496#(<= |main_#t~post6| 10)} assume !(#t~post6 < 50);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:56:40,396 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {115205#false} is VALID [2022-04-28 05:56:40,396 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:56:40,396 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:56:40,397 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:56:40,397 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 120 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:40,397 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:40,927 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:56:40,928 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:56:40,928 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:56:40,928 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {115205#false} is VALID [2022-04-28 05:56:40,928 INFO L290 TraceCheckUtils]: 93: Hoare triple {115524#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:56:40,928 INFO L290 TraceCheckUtils]: 92: Hoare triple {115528#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115524#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:56:40,929 INFO L290 TraceCheckUtils]: 91: Hoare triple {115528#(< ~counter~0 50)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115528#(< ~counter~0 50)} is VALID [2022-04-28 05:56:40,929 INFO L290 TraceCheckUtils]: 90: Hoare triple {115528#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {115528#(< ~counter~0 50)} is VALID [2022-04-28 05:56:40,929 INFO L290 TraceCheckUtils]: 89: Hoare triple {115528#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {115528#(< ~counter~0 50)} is VALID [2022-04-28 05:56:40,931 INFO L290 TraceCheckUtils]: 88: Hoare triple {115541#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115528#(< ~counter~0 50)} is VALID [2022-04-28 05:56:40,931 INFO L290 TraceCheckUtils]: 87: Hoare triple {115541#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,931 INFO L290 TraceCheckUtils]: 86: Hoare triple {115541#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,932 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #104#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,932 INFO L290 TraceCheckUtils]: 84: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,932 INFO L290 TraceCheckUtils]: 83: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,932 INFO L290 TraceCheckUtils]: 82: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,932 INFO L272 TraceCheckUtils]: 81: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,932 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #102#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 79: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 78: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 77: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L272 TraceCheckUtils]: 76: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #100#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 74: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 73: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L290 TraceCheckUtils]: 72: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,933 INFO L272 TraceCheckUtils]: 71: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,934 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #98#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,934 INFO L290 TraceCheckUtils]: 69: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,934 INFO L290 TraceCheckUtils]: 68: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,934 INFO L290 TraceCheckUtils]: 67: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,934 INFO L272 TraceCheckUtils]: 66: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,934 INFO L290 TraceCheckUtils]: 65: Hoare triple {115541#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,935 INFO L290 TraceCheckUtils]: 64: Hoare triple {115614#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115541#(< ~counter~0 49)} is VALID [2022-04-28 05:56:40,935 INFO L290 TraceCheckUtils]: 63: Hoare triple {115614#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115614#(< ~counter~0 48)} is VALID [2022-04-28 05:56:40,936 INFO L290 TraceCheckUtils]: 62: Hoare triple {115614#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {115614#(< ~counter~0 48)} is VALID [2022-04-28 05:56:40,936 INFO L290 TraceCheckUtils]: 61: Hoare triple {115624#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115614#(< ~counter~0 48)} is VALID [2022-04-28 05:56:40,937 INFO L290 TraceCheckUtils]: 60: Hoare triple {115624#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115624#(< ~counter~0 47)} is VALID [2022-04-28 05:56:40,937 INFO L290 TraceCheckUtils]: 59: Hoare triple {115624#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {115624#(< ~counter~0 47)} is VALID [2022-04-28 05:56:40,938 INFO L290 TraceCheckUtils]: 58: Hoare triple {115634#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115624#(< ~counter~0 47)} is VALID [2022-04-28 05:56:40,938 INFO L290 TraceCheckUtils]: 57: Hoare triple {115634#(< ~counter~0 46)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115634#(< ~counter~0 46)} is VALID [2022-04-28 05:56:40,938 INFO L290 TraceCheckUtils]: 56: Hoare triple {115634#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {115634#(< ~counter~0 46)} is VALID [2022-04-28 05:56:40,939 INFO L290 TraceCheckUtils]: 55: Hoare triple {115634#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {115634#(< ~counter~0 46)} is VALID [2022-04-28 05:56:40,939 INFO L290 TraceCheckUtils]: 54: Hoare triple {115647#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115634#(< ~counter~0 46)} is VALID [2022-04-28 05:56:40,940 INFO L290 TraceCheckUtils]: 53: Hoare triple {115647#(< ~counter~0 45)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,940 INFO L290 TraceCheckUtils]: 52: Hoare triple {115647#(< ~counter~0 45)} assume !(~c~0 >= 2 * ~v~0); {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,940 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #104#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,940 INFO L290 TraceCheckUtils]: 50: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,940 INFO L290 TraceCheckUtils]: 49: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,940 INFO L290 TraceCheckUtils]: 48: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,940 INFO L272 TraceCheckUtils]: 47: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,941 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #102#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,941 INFO L290 TraceCheckUtils]: 45: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,941 INFO L290 TraceCheckUtils]: 44: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,941 INFO L290 TraceCheckUtils]: 43: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,941 INFO L272 TraceCheckUtils]: 42: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,951 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #100#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,952 INFO L290 TraceCheckUtils]: 40: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,952 INFO L290 TraceCheckUtils]: 39: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,952 INFO L290 TraceCheckUtils]: 38: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,952 INFO L272 TraceCheckUtils]: 37: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,952 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #98#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,953 INFO L272 TraceCheckUtils]: 32: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,953 INFO L290 TraceCheckUtils]: 31: Hoare triple {115647#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,955 INFO L290 TraceCheckUtils]: 30: Hoare triple {115720#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115647#(< ~counter~0 45)} is VALID [2022-04-28 05:56:40,955 INFO L290 TraceCheckUtils]: 29: Hoare triple {115720#(< ~counter~0 44)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115720#(< ~counter~0 44)} is VALID [2022-04-28 05:56:40,955 INFO L290 TraceCheckUtils]: 28: Hoare triple {115720#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {115720#(< ~counter~0 44)} is VALID [2022-04-28 05:56:40,956 INFO L290 TraceCheckUtils]: 27: Hoare triple {115730#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115720#(< ~counter~0 44)} is VALID [2022-04-28 05:56:40,957 INFO L290 TraceCheckUtils]: 26: Hoare triple {115730#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115730#(< ~counter~0 43)} is VALID [2022-04-28 05:56:40,957 INFO L290 TraceCheckUtils]: 25: Hoare triple {115730#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {115730#(< ~counter~0 43)} is VALID [2022-04-28 05:56:40,958 INFO L290 TraceCheckUtils]: 24: Hoare triple {115740#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115730#(< ~counter~0 43)} is VALID [2022-04-28 05:56:40,958 INFO L290 TraceCheckUtils]: 23: Hoare triple {115740#(< ~counter~0 42)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115740#(< ~counter~0 42)} is VALID [2022-04-28 05:56:40,958 INFO L290 TraceCheckUtils]: 22: Hoare triple {115740#(< ~counter~0 42)} assume !(~c~0 >= ~b~0); {115740#(< ~counter~0 42)} is VALID [2022-04-28 05:56:40,958 INFO L290 TraceCheckUtils]: 21: Hoare triple {115740#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {115740#(< ~counter~0 42)} is VALID [2022-04-28 05:56:40,959 INFO L290 TraceCheckUtils]: 20: Hoare triple {115753#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115740#(< ~counter~0 42)} is VALID [2022-04-28 05:56:40,959 INFO L290 TraceCheckUtils]: 19: Hoare triple {115753#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115753#(< ~counter~0 41)} is VALID [2022-04-28 05:56:40,960 INFO L290 TraceCheckUtils]: 18: Hoare triple {115753#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {115753#(< ~counter~0 41)} is VALID [2022-04-28 05:56:40,960 INFO L290 TraceCheckUtils]: 17: Hoare triple {115763#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115753#(< ~counter~0 41)} is VALID [2022-04-28 05:56:40,961 INFO L290 TraceCheckUtils]: 16: Hoare triple {115763#(< ~counter~0 40)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,961 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115204#true} {115763#(< ~counter~0 40)} #96#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,961 INFO L290 TraceCheckUtils]: 14: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,961 INFO L290 TraceCheckUtils]: 13: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,961 INFO L290 TraceCheckUtils]: 12: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,961 INFO L272 TraceCheckUtils]: 11: Hoare triple {115763#(< ~counter~0 40)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,963 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115204#true} {115763#(< ~counter~0 40)} #94#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,963 INFO L290 TraceCheckUtils]: 9: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:40,963 INFO L290 TraceCheckUtils]: 8: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:40,963 INFO L290 TraceCheckUtils]: 7: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:40,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {115763#(< ~counter~0 40)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:40,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {115763#(< ~counter~0 40)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,964 INFO L272 TraceCheckUtils]: 4: Hoare triple {115763#(< ~counter~0 40)} call #t~ret9 := main(); {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115763#(< ~counter~0 40)} {115204#true} #108#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {115763#(< ~counter~0 40)} assume true; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,965 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115763#(< ~counter~0 40)} is VALID [2022-04-28 05:56:40,966 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:56:40,966 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 56 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:40,966 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:40,966 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2020139183] [2022-04-28 05:56:40,966 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:40,966 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [356203791] [2022-04-28 05:56:40,966 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [356203791] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:40,966 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:40,966 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 05:56:40,967 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:40,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [623779307] [2022-04-28 05:56:40,967 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [623779307] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:40,967 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:40,967 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:56:40,967 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [486867417] [2022-04-28 05:56:40,967 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:40,968 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:56:40,968 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:40,968 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:41,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:41,034 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:56:41,034 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:41,034 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:56:41,034 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:56:41,035 INFO L87 Difference]: Start difference. First operand 1164 states and 1539 transitions. Second operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:45,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:45,859 INFO L93 Difference]: Finished difference Result 1434 states and 1877 transitions. [2022-04-28 05:56:45,859 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:56:45,859 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:56:45,859 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:45,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:45,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:45,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:45,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:45,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 266 transitions. [2022-04-28 05:56:46,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:46,202 INFO L225 Difference]: With dead ends: 1434 [2022-04-28 05:56:46,202 INFO L226 Difference]: Without dead ends: 1427 [2022-04-28 05:56:46,203 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=468, Invalid=654, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:56:46,203 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 243 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 156 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 333 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 156 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:46,203 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 333 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [156 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:56:46,204 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1427 states. [2022-04-28 05:56:49,831 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1427 to 1358. [2022-04-28 05:56:49,831 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:49,833 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:49,834 INFO L74 IsIncluded]: Start isIncluded. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:49,834 INFO L87 Difference]: Start difference. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:49,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:49,885 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:49,885 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:49,886 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:49,886 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:49,887 INFO L74 IsIncluded]: Start isIncluded. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:49,888 INFO L87 Difference]: Start difference. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:49,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:49,939 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:49,939 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:49,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:49,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:49,941 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:49,941 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:49,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:50,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1358 states to 1358 states and 1786 transitions. [2022-04-28 05:56:50,025 INFO L78 Accepts]: Start accepts. Automaton has 1358 states and 1786 transitions. Word has length 98 [2022-04-28 05:56:50,025 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:50,025 INFO L495 AbstractCegarLoop]: Abstraction has 1358 states and 1786 transitions. [2022-04-28 05:56:50,025 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:50,025 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1358 states and 1786 transitions. [2022-04-28 05:56:53,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1786 edges. 1786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:53,943 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1786 transitions. [2022-04-28 05:56:53,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 05:56:53,944 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:53,944 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:56:53,960 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:54,144 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 05:56:54,144 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:54,145 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:54,145 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 1 times [2022-04-28 05:56:54,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:54,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1403724958] [2022-04-28 05:56:54,145 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:54,145 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 2 times [2022-04-28 05:56:54,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:54,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1084915215] [2022-04-28 05:56:54,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:54,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:54,157 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:54,157 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [296032009] [2022-04-28 05:56:54,157 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:54,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:54,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:54,159 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:54,170 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 05:56:54,233 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:54,233 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:54,234 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:56:54,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:54,255 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:54,696 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 05:56:54,697 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,698 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124279#(<= ~counter~0 0)} {124271#true} #108#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,698 INFO L272 TraceCheckUtils]: 4: Hoare triple {124279#(<= ~counter~0 0)} call #t~ret9 := main(); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,698 INFO L290 TraceCheckUtils]: 5: Hoare triple {124279#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,699 INFO L272 TraceCheckUtils]: 6: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,699 INFO L290 TraceCheckUtils]: 7: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,699 INFO L290 TraceCheckUtils]: 8: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,699 INFO L290 TraceCheckUtils]: 9: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,700 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #94#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,700 INFO L272 TraceCheckUtils]: 11: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,700 INFO L290 TraceCheckUtils]: 12: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,701 INFO L290 TraceCheckUtils]: 13: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,701 INFO L290 TraceCheckUtils]: 14: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,701 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #96#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,701 INFO L290 TraceCheckUtils]: 16: Hoare triple {124279#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:54,703 INFO L290 TraceCheckUtils]: 17: Hoare triple {124279#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:54,704 INFO L290 TraceCheckUtils]: 18: Hoare triple {124328#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:54,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {124328#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:54,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {124328#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:54,705 INFO L290 TraceCheckUtils]: 21: Hoare triple {124338#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:54,705 INFO L290 TraceCheckUtils]: 22: Hoare triple {124338#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:54,705 INFO L290 TraceCheckUtils]: 23: Hoare triple {124338#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:54,706 INFO L290 TraceCheckUtils]: 24: Hoare triple {124338#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:54,707 INFO L290 TraceCheckUtils]: 25: Hoare triple {124351#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:54,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {124351#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:54,708 INFO L290 TraceCheckUtils]: 27: Hoare triple {124351#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:54,708 INFO L290 TraceCheckUtils]: 28: Hoare triple {124361#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:54,708 INFO L290 TraceCheckUtils]: 29: Hoare triple {124361#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:54,709 INFO L290 TraceCheckUtils]: 30: Hoare triple {124361#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {124371#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,710 INFO L272 TraceCheckUtils]: 32: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,711 INFO L290 TraceCheckUtils]: 35: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,711 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #98#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,712 INFO L272 TraceCheckUtils]: 37: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,712 INFO L290 TraceCheckUtils]: 38: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,712 INFO L290 TraceCheckUtils]: 39: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,712 INFO L290 TraceCheckUtils]: 40: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,713 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #100#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,713 INFO L272 TraceCheckUtils]: 42: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,714 INFO L290 TraceCheckUtils]: 43: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,714 INFO L290 TraceCheckUtils]: 44: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,714 INFO L290 TraceCheckUtils]: 45: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,715 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #102#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,715 INFO L272 TraceCheckUtils]: 47: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,715 INFO L290 TraceCheckUtils]: 48: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,715 INFO L290 TraceCheckUtils]: 49: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,716 INFO L290 TraceCheckUtils]: 50: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,716 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #104#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,716 INFO L290 TraceCheckUtils]: 52: Hoare triple {124371#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,717 INFO L290 TraceCheckUtils]: 53: Hoare triple {124371#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:54,718 INFO L290 TraceCheckUtils]: 54: Hoare triple {124371#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:54,718 INFO L290 TraceCheckUtils]: 55: Hoare triple {124444#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:54,718 INFO L290 TraceCheckUtils]: 56: Hoare triple {124444#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:54,719 INFO L290 TraceCheckUtils]: 57: Hoare triple {124444#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:54,720 INFO L290 TraceCheckUtils]: 58: Hoare triple {124444#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:54,720 INFO L290 TraceCheckUtils]: 59: Hoare triple {124457#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:54,720 INFO L290 TraceCheckUtils]: 60: Hoare triple {124457#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:54,721 INFO L290 TraceCheckUtils]: 61: Hoare triple {124457#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:54,721 INFO L290 TraceCheckUtils]: 62: Hoare triple {124467#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:54,721 INFO L290 TraceCheckUtils]: 63: Hoare triple {124467#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:54,722 INFO L290 TraceCheckUtils]: 64: Hoare triple {124467#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,722 INFO L290 TraceCheckUtils]: 65: Hoare triple {124477#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,723 INFO L272 TraceCheckUtils]: 66: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,723 INFO L290 TraceCheckUtils]: 67: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,724 INFO L290 TraceCheckUtils]: 68: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,724 INFO L290 TraceCheckUtils]: 69: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,724 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #98#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,725 INFO L272 TraceCheckUtils]: 71: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,725 INFO L290 TraceCheckUtils]: 72: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,725 INFO L290 TraceCheckUtils]: 73: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,726 INFO L290 TraceCheckUtils]: 74: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,726 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #100#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,727 INFO L272 TraceCheckUtils]: 76: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,727 INFO L290 TraceCheckUtils]: 77: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,727 INFO L290 TraceCheckUtils]: 78: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,727 INFO L290 TraceCheckUtils]: 79: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,728 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #102#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,728 INFO L272 TraceCheckUtils]: 81: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,728 INFO L290 TraceCheckUtils]: 82: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,729 INFO L290 TraceCheckUtils]: 83: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,729 INFO L290 TraceCheckUtils]: 84: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,729 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #104#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 86: Hoare triple {124477#(<= ~counter~0 9)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 87: Hoare triple {124477#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124547#(<= |main_#t~post8| 9)} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 88: Hoare triple {124547#(<= |main_#t~post8| 9)} assume !(#t~post8 < 50);havoc #t~post8; {124272#false} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 50);havoc #t~post7; {124272#false} is VALID [2022-04-28 05:56:54,730 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 50);havoc #t~post6; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 05:56:54,731 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 103 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:54,731 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:55,255 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 05:56:55,255 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 05:56:55,255 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 05:56:55,255 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {124272#false} is VALID [2022-04-28 05:56:55,255 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 50);havoc #t~post6; {124272#false} is VALID [2022-04-28 05:56:55,255 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 50);havoc #t~post7; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 88: Hoare triple {124611#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {124272#false} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 87: Hoare triple {124615#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124611#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:56:55,256 INFO L290 TraceCheckUtils]: 86: Hoare triple {124615#(< ~counter~0 50)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,257 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #104#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,257 INFO L290 TraceCheckUtils]: 84: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,257 INFO L290 TraceCheckUtils]: 83: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,257 INFO L290 TraceCheckUtils]: 82: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,257 INFO L272 TraceCheckUtils]: 81: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,258 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #102#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,258 INFO L290 TraceCheckUtils]: 79: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,258 INFO L290 TraceCheckUtils]: 78: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,258 INFO L290 TraceCheckUtils]: 77: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,258 INFO L272 TraceCheckUtils]: 76: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,258 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #100#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,258 INFO L290 TraceCheckUtils]: 74: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L290 TraceCheckUtils]: 73: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L290 TraceCheckUtils]: 72: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L272 TraceCheckUtils]: 71: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #98#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,259 INFO L290 TraceCheckUtils]: 69: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L290 TraceCheckUtils]: 68: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L290 TraceCheckUtils]: 67: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,259 INFO L272 TraceCheckUtils]: 66: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,260 INFO L290 TraceCheckUtils]: 65: Hoare triple {124615#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,261 INFO L290 TraceCheckUtils]: 64: Hoare triple {124685#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124615#(< ~counter~0 50)} is VALID [2022-04-28 05:56:55,262 INFO L290 TraceCheckUtils]: 63: Hoare triple {124685#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124685#(< ~counter~0 49)} is VALID [2022-04-28 05:56:55,262 INFO L290 TraceCheckUtils]: 62: Hoare triple {124685#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {124685#(< ~counter~0 49)} is VALID [2022-04-28 05:56:55,263 INFO L290 TraceCheckUtils]: 61: Hoare triple {124695#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124685#(< ~counter~0 49)} is VALID [2022-04-28 05:56:55,263 INFO L290 TraceCheckUtils]: 60: Hoare triple {124695#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124695#(< ~counter~0 48)} is VALID [2022-04-28 05:56:55,263 INFO L290 TraceCheckUtils]: 59: Hoare triple {124695#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {124695#(< ~counter~0 48)} is VALID [2022-04-28 05:56:55,264 INFO L290 TraceCheckUtils]: 58: Hoare triple {124705#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124695#(< ~counter~0 48)} is VALID [2022-04-28 05:56:55,265 INFO L290 TraceCheckUtils]: 57: Hoare triple {124705#(< ~counter~0 47)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124705#(< ~counter~0 47)} is VALID [2022-04-28 05:56:55,265 INFO L290 TraceCheckUtils]: 56: Hoare triple {124705#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {124705#(< ~counter~0 47)} is VALID [2022-04-28 05:56:55,265 INFO L290 TraceCheckUtils]: 55: Hoare triple {124705#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {124705#(< ~counter~0 47)} is VALID [2022-04-28 05:56:55,266 INFO L290 TraceCheckUtils]: 54: Hoare triple {124718#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124705#(< ~counter~0 47)} is VALID [2022-04-28 05:56:55,266 INFO L290 TraceCheckUtils]: 53: Hoare triple {124718#(< ~counter~0 46)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,266 INFO L290 TraceCheckUtils]: 52: Hoare triple {124718#(< ~counter~0 46)} assume !(~c~0 >= 2 * ~v~0); {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,267 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #104#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,267 INFO L290 TraceCheckUtils]: 50: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,267 INFO L290 TraceCheckUtils]: 49: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,267 INFO L290 TraceCheckUtils]: 48: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,267 INFO L272 TraceCheckUtils]: 47: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,268 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #102#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,268 INFO L290 TraceCheckUtils]: 45: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,268 INFO L290 TraceCheckUtils]: 44: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,268 INFO L290 TraceCheckUtils]: 43: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,268 INFO L272 TraceCheckUtils]: 42: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,268 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #100#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,268 INFO L290 TraceCheckUtils]: 40: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L290 TraceCheckUtils]: 39: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L290 TraceCheckUtils]: 38: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L272 TraceCheckUtils]: 37: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #98#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,269 INFO L290 TraceCheckUtils]: 35: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L290 TraceCheckUtils]: 34: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L290 TraceCheckUtils]: 33: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,269 INFO L272 TraceCheckUtils]: 32: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,270 INFO L290 TraceCheckUtils]: 31: Hoare triple {124718#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {124791#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124718#(< ~counter~0 46)} is VALID [2022-04-28 05:56:55,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {124791#(< ~counter~0 45)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124791#(< ~counter~0 45)} is VALID [2022-04-28 05:56:55,271 INFO L290 TraceCheckUtils]: 28: Hoare triple {124791#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {124791#(< ~counter~0 45)} is VALID [2022-04-28 05:56:55,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {124801#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124791#(< ~counter~0 45)} is VALID [2022-04-28 05:56:55,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {124801#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124801#(< ~counter~0 44)} is VALID [2022-04-28 05:56:55,273 INFO L290 TraceCheckUtils]: 25: Hoare triple {124801#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {124801#(< ~counter~0 44)} is VALID [2022-04-28 05:56:55,274 INFO L290 TraceCheckUtils]: 24: Hoare triple {124811#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124801#(< ~counter~0 44)} is VALID [2022-04-28 05:56:55,274 INFO L290 TraceCheckUtils]: 23: Hoare triple {124811#(< ~counter~0 43)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124811#(< ~counter~0 43)} is VALID [2022-04-28 05:56:55,274 INFO L290 TraceCheckUtils]: 22: Hoare triple {124811#(< ~counter~0 43)} assume !(~c~0 >= ~b~0); {124811#(< ~counter~0 43)} is VALID [2022-04-28 05:56:55,274 INFO L290 TraceCheckUtils]: 21: Hoare triple {124811#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {124811#(< ~counter~0 43)} is VALID [2022-04-28 05:56:55,275 INFO L290 TraceCheckUtils]: 20: Hoare triple {124824#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124811#(< ~counter~0 43)} is VALID [2022-04-28 05:56:55,275 INFO L290 TraceCheckUtils]: 19: Hoare triple {124824#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124824#(< ~counter~0 42)} is VALID [2022-04-28 05:56:55,276 INFO L290 TraceCheckUtils]: 18: Hoare triple {124824#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {124824#(< ~counter~0 42)} is VALID [2022-04-28 05:56:55,277 INFO L290 TraceCheckUtils]: 17: Hoare triple {124834#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124824#(< ~counter~0 42)} is VALID [2022-04-28 05:56:55,277 INFO L290 TraceCheckUtils]: 16: Hoare triple {124834#(< ~counter~0 41)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,277 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124271#true} {124834#(< ~counter~0 41)} #96#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,277 INFO L290 TraceCheckUtils]: 14: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,277 INFO L290 TraceCheckUtils]: 13: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,277 INFO L290 TraceCheckUtils]: 12: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,277 INFO L272 TraceCheckUtils]: 11: Hoare triple {124834#(< ~counter~0 41)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,278 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124271#true} {124834#(< ~counter~0 41)} #94#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,278 INFO L290 TraceCheckUtils]: 9: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:55,278 INFO L290 TraceCheckUtils]: 8: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:55,278 INFO L290 TraceCheckUtils]: 7: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:55,278 INFO L272 TraceCheckUtils]: 6: Hoare triple {124834#(< ~counter~0 41)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:55,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {124834#(< ~counter~0 41)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,279 INFO L272 TraceCheckUtils]: 4: Hoare triple {124834#(< ~counter~0 41)} call #t~ret9 := main(); {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,279 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124834#(< ~counter~0 41)} {124271#true} #108#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,279 INFO L290 TraceCheckUtils]: 2: Hoare triple {124834#(< ~counter~0 41)} assume true; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,280 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124834#(< ~counter~0 41)} is VALID [2022-04-28 05:56:55,280 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 05:56:55,280 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 39 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:55,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:55,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1084915215] [2022-04-28 05:56:55,280 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:55,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [296032009] [2022-04-28 05:56:55,280 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [296032009] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:55,280 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:55,280 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:56:55,280 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:55,281 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1403724958] [2022-04-28 05:56:55,281 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1403724958] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:55,281 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:55,281 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:56:55,281 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [974426865] [2022-04-28 05:56:55,281 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:55,281 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:56:55,281 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:55,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:55,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:55,354 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:56:55,354 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:55,354 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:56:55,354 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:56:55,354 INFO L87 Difference]: Start difference. First operand 1358 states and 1786 transitions. Second operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:57:00,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:00,051 INFO L93 Difference]: Finished difference Result 1838 states and 2503 transitions. [2022-04-28 05:57:00,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:57:00,051 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:57:00,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:00,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:57:00,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:57:00,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:57:00,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:57:00,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:57:00,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:00,392 INFO L225 Difference]: With dead ends: 1838 [2022-04-28 05:57:00,392 INFO L226 Difference]: Without dead ends: 1358 [2022-04-28 05:57:00,394 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 204 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:57:00,394 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 227 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 111 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 227 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 259 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 111 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:00,394 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [227 Valid, 296 Invalid, 259 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [111 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:57:00,395 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1358 states. [2022-04-28 05:57:03,801 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1358 to 1334. [2022-04-28 05:57:03,801 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:03,802 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:57:03,803 INFO L74 IsIncluded]: Start isIncluded. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:57:03,804 INFO L87 Difference]: Start difference. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:57:03,851 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:03,851 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:57:03,851 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:57:03,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:03,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:03,853 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:57:03,854 INFO L87 Difference]: Start difference. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:57:03,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:03,927 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:57:03,928 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:57:03,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:03,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:03,929 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:03,929 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:03,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:57:04,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1736 transitions. [2022-04-28 05:57:04,000 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1736 transitions. Word has length 99 [2022-04-28 05:57:04,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:04,001 INFO L495 AbstractCegarLoop]: Abstraction has 1334 states and 1736 transitions. [2022-04-28 05:57:04,001 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:57:04,001 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1334 states and 1736 transitions. [2022-04-28 05:57:07,846 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1736 edges. 1736 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:07,846 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1736 transitions. [2022-04-28 05:57:07,847 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:57:07,847 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:07,847 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-28 05:57:07,863 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-28 05:57:08,048 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-28 05:57:08,048 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:08,048 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:08,048 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 5 times [2022-04-28 05:57:08,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:08,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1221465536] [2022-04-28 05:57:08,049 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:08,049 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 6 times [2022-04-28 05:57:08,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:08,049 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1029030033] [2022-04-28 05:57:08,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:08,049 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:08,060 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:08,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [478666252] [2022-04-28 05:57:08,060 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:57:08,060 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:08,060 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:08,061 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:57:08,063 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 05:57:08,162 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:57:08,163 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:08,164 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 05:57:08,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:08,187 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:09,257 INFO L272 TraceCheckUtils]: 0: Hoare triple {133962#true} call ULTIMATE.init(); {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {133962#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 2: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133962#true} {133962#true} #108#return; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L272 TraceCheckUtils]: 4: Hoare triple {133962#true} call #t~ret9 := main(); {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 5: Hoare triple {133962#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L272 TraceCheckUtils]: 6: Hoare triple {133962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133962#true} {133962#true} #94#return; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L272 TraceCheckUtils]: 11: Hoare triple {133962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 12: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,257 INFO L290 TraceCheckUtils]: 13: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,258 INFO L290 TraceCheckUtils]: 14: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,258 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {133962#true} {133962#true} #96#return; {133962#true} is VALID [2022-04-28 05:57:09,258 INFO L290 TraceCheckUtils]: 16: Hoare triple {133962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,258 INFO L290 TraceCheckUtils]: 17: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,259 INFO L290 TraceCheckUtils]: 18: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,259 INFO L290 TraceCheckUtils]: 19: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,259 INFO L290 TraceCheckUtils]: 20: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,260 INFO L290 TraceCheckUtils]: 21: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,260 INFO L290 TraceCheckUtils]: 22: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,261 INFO L290 TraceCheckUtils]: 23: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,261 INFO L290 TraceCheckUtils]: 24: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,261 INFO L272 TraceCheckUtils]: 25: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,261 INFO L290 TraceCheckUtils]: 26: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,261 INFO L290 TraceCheckUtils]: 27: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,261 INFO L290 TraceCheckUtils]: 28: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,262 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,262 INFO L272 TraceCheckUtils]: 30: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,262 INFO L290 TraceCheckUtils]: 31: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:09,262 INFO L290 TraceCheckUtils]: 32: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:09,263 INFO L290 TraceCheckUtils]: 33: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:09,263 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,263 INFO L272 TraceCheckUtils]: 35: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,263 INFO L290 TraceCheckUtils]: 36: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,263 INFO L290 TraceCheckUtils]: 37: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,264 INFO L290 TraceCheckUtils]: 38: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,264 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,264 INFO L272 TraceCheckUtils]: 40: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,264 INFO L290 TraceCheckUtils]: 41: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,264 INFO L290 TraceCheckUtils]: 42: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,264 INFO L290 TraceCheckUtils]: 43: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,265 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,265 INFO L290 TraceCheckUtils]: 45: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,266 INFO L290 TraceCheckUtils]: 46: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,266 INFO L290 TraceCheckUtils]: 47: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,266 INFO L272 TraceCheckUtils]: 48: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,266 INFO L290 TraceCheckUtils]: 49: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,266 INFO L290 TraceCheckUtils]: 50: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,266 INFO L290 TraceCheckUtils]: 51: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,267 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,267 INFO L272 TraceCheckUtils]: 53: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,267 INFO L290 TraceCheckUtils]: 54: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,267 INFO L290 TraceCheckUtils]: 55: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,267 INFO L290 TraceCheckUtils]: 56: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,268 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,268 INFO L272 TraceCheckUtils]: 58: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,268 INFO L290 TraceCheckUtils]: 59: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,268 INFO L290 TraceCheckUtils]: 60: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,268 INFO L290 TraceCheckUtils]: 61: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,269 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,269 INFO L272 TraceCheckUtils]: 63: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,269 INFO L290 TraceCheckUtils]: 64: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,269 INFO L290 TraceCheckUtils]: 65: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,269 INFO L290 TraceCheckUtils]: 66: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,270 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,270 INFO L290 TraceCheckUtils]: 68: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,270 INFO L290 TraceCheckUtils]: 69: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,271 INFO L290 TraceCheckUtils]: 70: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,271 INFO L272 TraceCheckUtils]: 71: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,271 INFO L290 TraceCheckUtils]: 72: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,271 INFO L290 TraceCheckUtils]: 73: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,271 INFO L290 TraceCheckUtils]: 74: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,272 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,272 INFO L272 TraceCheckUtils]: 76: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,272 INFO L290 TraceCheckUtils]: 77: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,272 INFO L290 TraceCheckUtils]: 78: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,272 INFO L290 TraceCheckUtils]: 79: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,273 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,273 INFO L272 TraceCheckUtils]: 81: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,273 INFO L290 TraceCheckUtils]: 82: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:57:09,273 INFO L290 TraceCheckUtils]: 83: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:57:09,273 INFO L290 TraceCheckUtils]: 84: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:57:09,273 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,273 INFO L272 TraceCheckUtils]: 86: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:57:09,274 INFO L290 TraceCheckUtils]: 87: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:09,274 INFO L290 TraceCheckUtils]: 88: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:09,274 INFO L290 TraceCheckUtils]: 89: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:09,275 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,276 INFO L290 TraceCheckUtils]: 91: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,279 INFO L290 TraceCheckUtils]: 92: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,280 INFO L290 TraceCheckUtils]: 93: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,280 INFO L290 TraceCheckUtils]: 94: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,281 INFO L290 TraceCheckUtils]: 95: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:57:09,283 INFO L290 TraceCheckUtils]: 96: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:57:09,283 INFO L290 TraceCheckUtils]: 97: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:57:09,292 INFO L290 TraceCheckUtils]: 98: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:57:09,293 INFO L290 TraceCheckUtils]: 99: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !(0 != ~b~0); {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:57:09,294 INFO L272 TraceCheckUtils]: 100: Hoare triple {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:09,294 INFO L290 TraceCheckUtils]: 101: Hoare triple {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {134279#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:09,294 INFO L290 TraceCheckUtils]: 102: Hoare triple {134279#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {133963#false} is VALID [2022-04-28 05:57:09,294 INFO L290 TraceCheckUtils]: 103: Hoare triple {133963#false} assume !false; {133963#false} is VALID [2022-04-28 05:57:09,295 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 57 proven. 35 refuted. 0 times theorem prover too weak. 227 trivial. 0 not checked. [2022-04-28 05:57:09,295 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:23,244 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:57:23,651 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:23,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1029030033] [2022-04-28 05:57:23,652 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:23,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [478666252] [2022-04-28 05:57:23,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [478666252] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:57:23,652 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:57:23,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 05:57:23,652 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:23,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1221465536] [2022-04-28 05:57:23,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1221465536] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:23,652 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:23,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:57:23,653 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1999762596] [2022-04-28 05:57:23,653 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:23,653 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:57:23,653 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:23,653 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:57:23,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:23,715 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:57:23,715 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:23,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:57:23,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:57:23,715 INFO L87 Difference]: Start difference. First operand 1334 states and 1736 transitions. Second operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:57:29,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:29,612 INFO L93 Difference]: Finished difference Result 1565 states and 2045 transitions. [2022-04-28 05:57:29,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:57:29,612 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:57:29,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:29,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:57:29,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:57:29,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:57:29,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:57:29,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-28 05:57:29,786 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:29,900 INFO L225 Difference]: With dead ends: 1565 [2022-04-28 05:57:29,901 INFO L226 Difference]: Without dead ends: 1556 [2022-04-28 05:57:29,901 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:57:29,901 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 68 mSDsluCounter, 279 mSDsCounter, 0 mSdLazyCounter, 365 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 415 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 365 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:29,901 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 330 Invalid, 415 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 365 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 05:57:29,902 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1556 states. [2022-04-28 05:57:33,877 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1556 to 1518. [2022-04-28 05:57:33,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:33,879 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:57:33,880 INFO L74 IsIncluded]: Start isIncluded. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:57:33,880 INFO L87 Difference]: Start difference. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:57:33,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:33,949 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:57:33,950 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:57:33,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:33,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:33,952 INFO L74 IsIncluded]: Start isIncluded. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:57:33,953 INFO L87 Difference]: Start difference. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:57:34,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:34,024 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:57:34,024 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:57:34,025 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:34,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:34,026 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:34,026 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:34,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:57:34,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1518 states to 1518 states and 1985 transitions. [2022-04-28 05:57:34,130 INFO L78 Accepts]: Start accepts. Automaton has 1518 states and 1985 transitions. Word has length 104 [2022-04-28 05:57:34,130 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:34,130 INFO L495 AbstractCegarLoop]: Abstraction has 1518 states and 1985 transitions. [2022-04-28 05:57:34,130 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:57:34,130 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1518 states and 1985 transitions. [2022-04-28 05:57:38,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1985 edges. 1985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:38,714 INFO L276 IsEmpty]: Start isEmpty. Operand 1518 states and 1985 transitions. [2022-04-28 05:57:38,715 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:57:38,715 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:38,715 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:57:38,731 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-28 05:57:38,915 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:38,916 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:38,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:38,916 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 5 times [2022-04-28 05:57:38,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:38,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1141475156] [2022-04-28 05:57:38,916 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:38,916 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 6 times [2022-04-28 05:57:38,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:38,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [773976656] [2022-04-28 05:57:38,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:38,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:38,928 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:38,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1286297682] [2022-04-28 05:57:38,928 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:57:38,928 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:38,928 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:38,929 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:57:38,931 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 05:57:38,991 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:57:38,991 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:38,992 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:57:39,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:39,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:55,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,388 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,389 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,389 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,389 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 05:57:55,389 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,390 INFO L290 TraceCheckUtils]: 17: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,390 INFO L290 TraceCheckUtils]: 18: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,390 INFO L290 TraceCheckUtils]: 19: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,391 INFO L290 TraceCheckUtils]: 20: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,391 INFO L290 TraceCheckUtils]: 21: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,392 INFO L290 TraceCheckUtils]: 22: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,392 INFO L290 TraceCheckUtils]: 23: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,393 INFO L290 TraceCheckUtils]: 24: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,393 INFO L272 TraceCheckUtils]: 25: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,393 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,393 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,394 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #98#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,394 INFO L272 TraceCheckUtils]: 30: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,394 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:55,395 INFO L290 TraceCheckUtils]: 32: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:55,395 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:55,396 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #100#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,396 INFO L272 TraceCheckUtils]: 35: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,396 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,396 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,396 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,397 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #102#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,397 INFO L272 TraceCheckUtils]: 40: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,397 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,397 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,397 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,398 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #104#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,398 INFO L290 TraceCheckUtils]: 45: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= 2 * ~v~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,399 INFO L290 TraceCheckUtils]: 46: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,399 INFO L290 TraceCheckUtils]: 47: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,399 INFO L290 TraceCheckUtils]: 48: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,400 INFO L290 TraceCheckUtils]: 49: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:55,400 INFO L290 TraceCheckUtils]: 50: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:55,401 INFO L290 TraceCheckUtils]: 51: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:55,401 INFO L290 TraceCheckUtils]: 52: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:55,402 INFO L290 TraceCheckUtils]: 53: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:55,402 INFO L290 TraceCheckUtils]: 54: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:55,403 INFO L290 TraceCheckUtils]: 55: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:55,403 INFO L290 TraceCheckUtils]: 56: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,404 INFO L290 TraceCheckUtils]: 57: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,404 INFO L290 TraceCheckUtils]: 58: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,404 INFO L272 TraceCheckUtils]: 59: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,404 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,404 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,404 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,405 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #98#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,405 INFO L272 TraceCheckUtils]: 64: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,405 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,406 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,406 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,406 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #100#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,407 INFO L272 TraceCheckUtils]: 69: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,407 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,407 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,407 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,408 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #102#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,408 INFO L272 TraceCheckUtils]: 74: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,408 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:55,408 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:55,408 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:55,409 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #104#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,409 INFO L290 TraceCheckUtils]: 79: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:55,410 INFO L290 TraceCheckUtils]: 80: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:55,410 INFO L290 TraceCheckUtils]: 81: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:55,411 INFO L290 TraceCheckUtils]: 82: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:55,411 INFO L290 TraceCheckUtils]: 83: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:55,412 INFO L290 TraceCheckUtils]: 84: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,412 INFO L290 TraceCheckUtils]: 85: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,413 INFO L290 TraceCheckUtils]: 86: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,413 INFO L290 TraceCheckUtils]: 87: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,414 INFO L290 TraceCheckUtils]: 88: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,414 INFO L290 TraceCheckUtils]: 89: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,415 INFO L290 TraceCheckUtils]: 90: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,415 INFO L290 TraceCheckUtils]: 91: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,416 INFO L290 TraceCheckUtils]: 92: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post8 < 50);havoc #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:55,416 INFO L272 TraceCheckUtils]: 93: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:55,416 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:55,416 INFO L290 TraceCheckUtils]: 95: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:55,417 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:55,438 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:55,439 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:55,439 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:55,440 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 05:57:55,440 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 05:57:55,440 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 40 proven. 73 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:57:55,440 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:28,904 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 05:58:28,904 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 05:58:28,904 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:28,905 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:58:28,906 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:28,906 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:28,906 INFO L290 TraceCheckUtils]: 95: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:28,907 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:58:28,907 INFO L272 TraceCheckUtils]: 93: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:28,907 INFO L290 TraceCheckUtils]: 92: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,908 INFO L290 TraceCheckUtils]: 91: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,908 INFO L290 TraceCheckUtils]: 90: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,909 INFO L290 TraceCheckUtils]: 89: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 50);havoc #t~post7; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,909 INFO L290 TraceCheckUtils]: 88: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,909 INFO L290 TraceCheckUtils]: 87: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,910 INFO L290 TraceCheckUtils]: 86: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:28,910 INFO L290 TraceCheckUtils]: 85: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:29,864 INFO L290 TraceCheckUtils]: 84: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:58:29,865 INFO L290 TraceCheckUtils]: 83: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !(~c~0 >= ~b~0); {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:29,865 INFO L290 TraceCheckUtils]: 82: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 50);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:29,866 INFO L290 TraceCheckUtils]: 81: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:30,002 INFO L290 TraceCheckUtils]: 80: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:30,003 INFO L290 TraceCheckUtils]: 79: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,004 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #104#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,004 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,004 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,004 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,004 INFO L272 TraceCheckUtils]: 74: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,005 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #102#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,005 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,005 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,005 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,005 INFO L272 TraceCheckUtils]: 69: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,006 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #100#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,006 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,006 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,006 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,006 INFO L272 TraceCheckUtils]: 64: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,007 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #98#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,007 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,007 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,007 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,007 INFO L272 TraceCheckUtils]: 59: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,008 INFO L290 TraceCheckUtils]: 58: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,008 INFO L290 TraceCheckUtils]: 57: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,009 INFO L290 TraceCheckUtils]: 56: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:58:30,010 INFO L290 TraceCheckUtils]: 55: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 50);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:30,010 INFO L290 TraceCheckUtils]: 54: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:30,011 INFO L290 TraceCheckUtils]: 53: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:58:30,011 INFO L290 TraceCheckUtils]: 52: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:58:30,011 INFO L290 TraceCheckUtils]: 51: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:58:30,012 INFO L290 TraceCheckUtils]: 50: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:58:30,012 INFO L290 TraceCheckUtils]: 49: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= ~b~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,013 INFO L290 TraceCheckUtils]: 48: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !!(#t~post7 < 50);havoc #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,013 INFO L290 TraceCheckUtils]: 47: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,013 INFO L290 TraceCheckUtils]: 46: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= 2 * ~v~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,014 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #104#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L272 TraceCheckUtils]: 40: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #102#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,015 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,016 INFO L272 TraceCheckUtils]: 35: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,016 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143622#true} #100#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:30,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 32: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:58:30,017 INFO L272 TraceCheckUtils]: 30: Hoare triple {143622#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143622#true} #98#return; {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L272 TraceCheckUtils]: 25: Hoare triple {143622#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 24: Hoare triple {143622#true} assume !!(#t~post8 < 50);havoc #t~post8; {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 23: Hoare triple {143622#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143622#true} is VALID [2022-04-28 05:58:30,017 INFO L290 TraceCheckUtils]: 22: Hoare triple {143622#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 21: Hoare triple {143622#true} assume !!(#t~post7 < 50);havoc #t~post7; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 20: Hoare triple {143622#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 19: Hoare triple {143622#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 18: Hoare triple {143622#true} assume !!(#t~post6 < 50);havoc #t~post6; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {143622#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143622#true} is VALID [2022-04-28 05:58:30,018 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 05:58:30,019 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 05:58:30,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:58:30,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143622#true} is VALID [2022-04-28 05:58:30,019 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 05:58:30,019 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 66 proven. 47 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:58:30,019 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:30,019 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [773976656] [2022-04-28 05:58:30,019 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:30,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1286297682] [2022-04-28 05:58:30,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1286297682] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:30,020 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:30,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 18 [2022-04-28 05:58:30,020 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:30,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1141475156] [2022-04-28 05:58:30,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1141475156] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:30,020 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:30,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:58:30,020 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1180735566] [2022-04-28 05:58:30,020 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:30,021 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:58:30,021 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:30,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:30,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:30,109 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:58:30,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:30,109 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:58:30,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=258, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:58:30,110 INFO L87 Difference]: Start difference. First operand 1518 states and 1985 transitions. Second operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:38,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:38,585 INFO L93 Difference]: Finished difference Result 1833 states and 2418 transitions. [2022-04-28 05:58:38,585 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:58:38,586 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:58:38,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:38,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:38,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:58:38,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:38,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:58:38,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 245 transitions. [2022-04-28 05:58:38,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:39,067 INFO L225 Difference]: With dead ends: 1833 [2022-04-28 05:58:39,067 INFO L226 Difference]: Without dead ends: 1831 [2022-04-28 05:58:39,067 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 183 SyntacticMatches, 4 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=128, Invalid=628, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:58:39,068 INFO L413 NwaCegarLoop]: 92 mSDtfsCounter, 149 mSDsluCounter, 498 mSDsCounter, 0 mSdLazyCounter, 779 mSolverCounterSat, 98 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 590 SdHoareTripleChecker+Invalid, 877 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 98 IncrementalHoareTripleChecker+Valid, 779 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:39,068 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 590 Invalid, 877 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [98 Valid, 779 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-28 05:58:39,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1831 states. [2022-04-28 05:58:43,817 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1831 to 1765. [2022-04-28 05:58:43,817 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:43,819 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:43,820 INFO L74 IsIncluded]: Start isIncluded. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:43,821 INFO L87 Difference]: Start difference. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:43,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:43,914 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:58:43,914 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:58:43,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:43,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:43,918 INFO L74 IsIncluded]: Start isIncluded. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:58:43,919 INFO L87 Difference]: Start difference. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:58:44,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:44,008 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:58:44,008 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:58:44,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:44,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:44,010 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:44,010 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:44,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:44,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1765 states to 1765 states and 2340 transitions. [2022-04-28 05:58:44,172 INFO L78 Accepts]: Start accepts. Automaton has 1765 states and 2340 transitions. Word has length 102 [2022-04-28 05:58:44,172 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:44,172 INFO L495 AbstractCegarLoop]: Abstraction has 1765 states and 2340 transitions. [2022-04-28 05:58:44,172 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:44,172 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1765 states and 2340 transitions. [2022-04-28 05:58:50,021 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2340 edges. 2340 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:50,021 INFO L276 IsEmpty]: Start isEmpty. Operand 1765 states and 2340 transitions. [2022-04-28 05:58:50,022 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-28 05:58:50,022 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:50,022 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 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] [2022-04-28 05:58:50,038 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Ended with exit code 0 [2022-04-28 05:58:50,223 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 05:58:50,223 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:50,223 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:50,223 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 7 times [2022-04-28 05:58:50,223 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:50,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2394529] [2022-04-28 05:58:50,224 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:50,224 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 8 times [2022-04-28 05:58:50,224 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:50,224 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [264033078] [2022-04-28 05:58:50,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:50,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:50,235 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:50,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [826267683] [2022-04-28 05:58:50,235 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:50,235 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:50,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:50,236 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:50,238 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 05:58:50,296 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:50,296 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:50,297 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:58:50,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:50,318 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:50,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 05:58:50,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,786 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155137#(<= ~counter~0 0)} {155129#true} #108#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,787 INFO L272 TraceCheckUtils]: 4: Hoare triple {155137#(<= ~counter~0 0)} call #t~ret9 := main(); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,787 INFO L290 TraceCheckUtils]: 5: Hoare triple {155137#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,787 INFO L272 TraceCheckUtils]: 6: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,788 INFO L290 TraceCheckUtils]: 7: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,788 INFO L290 TraceCheckUtils]: 8: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,788 INFO L290 TraceCheckUtils]: 9: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,788 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #94#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,789 INFO L272 TraceCheckUtils]: 11: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,789 INFO L290 TraceCheckUtils]: 12: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,789 INFO L290 TraceCheckUtils]: 13: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,790 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #96#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,790 INFO L290 TraceCheckUtils]: 16: Hoare triple {155137#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:50,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {155137#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:50,793 INFO L290 TraceCheckUtils]: 18: Hoare triple {155186#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:50,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {155186#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:50,794 INFO L290 TraceCheckUtils]: 20: Hoare triple {155186#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:50,794 INFO L290 TraceCheckUtils]: 21: Hoare triple {155196#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:50,794 INFO L290 TraceCheckUtils]: 22: Hoare triple {155196#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:50,795 INFO L290 TraceCheckUtils]: 23: Hoare triple {155196#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,795 INFO L290 TraceCheckUtils]: 24: Hoare triple {155206#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,796 INFO L272 TraceCheckUtils]: 25: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,796 INFO L290 TraceCheckUtils]: 26: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,797 INFO L290 TraceCheckUtils]: 27: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,797 INFO L290 TraceCheckUtils]: 28: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,797 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #98#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,798 INFO L272 TraceCheckUtils]: 30: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,798 INFO L290 TraceCheckUtils]: 31: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,798 INFO L290 TraceCheckUtils]: 32: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,799 INFO L290 TraceCheckUtils]: 33: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,799 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #100#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,800 INFO L272 TraceCheckUtils]: 35: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,800 INFO L290 TraceCheckUtils]: 36: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,800 INFO L290 TraceCheckUtils]: 37: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,800 INFO L290 TraceCheckUtils]: 38: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,801 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #102#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,801 INFO L272 TraceCheckUtils]: 40: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,802 INFO L290 TraceCheckUtils]: 41: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,802 INFO L290 TraceCheckUtils]: 42: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,802 INFO L290 TraceCheckUtils]: 43: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,802 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #104#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,803 INFO L290 TraceCheckUtils]: 45: Hoare triple {155206#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,803 INFO L290 TraceCheckUtils]: 46: Hoare triple {155206#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:50,804 INFO L290 TraceCheckUtils]: 47: Hoare triple {155206#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:50,804 INFO L290 TraceCheckUtils]: 48: Hoare triple {155279#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:50,804 INFO L290 TraceCheckUtils]: 49: Hoare triple {155279#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:50,805 INFO L290 TraceCheckUtils]: 50: Hoare triple {155279#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:50,806 INFO L290 TraceCheckUtils]: 51: Hoare triple {155279#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:50,806 INFO L290 TraceCheckUtils]: 52: Hoare triple {155292#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:50,806 INFO L290 TraceCheckUtils]: 53: Hoare triple {155292#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:50,807 INFO L290 TraceCheckUtils]: 54: Hoare triple {155292#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:50,807 INFO L290 TraceCheckUtils]: 55: Hoare triple {155302#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:50,808 INFO L290 TraceCheckUtils]: 56: Hoare triple {155302#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:50,809 INFO L290 TraceCheckUtils]: 57: Hoare triple {155302#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,809 INFO L290 TraceCheckUtils]: 58: Hoare triple {155312#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,809 INFO L272 TraceCheckUtils]: 59: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,810 INFO L290 TraceCheckUtils]: 60: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,810 INFO L290 TraceCheckUtils]: 61: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,810 INFO L290 TraceCheckUtils]: 62: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,811 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #98#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,811 INFO L272 TraceCheckUtils]: 64: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,811 INFO L290 TraceCheckUtils]: 65: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,812 INFO L290 TraceCheckUtils]: 66: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,812 INFO L290 TraceCheckUtils]: 67: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,812 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #100#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,813 INFO L272 TraceCheckUtils]: 69: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,813 INFO L290 TraceCheckUtils]: 70: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,813 INFO L290 TraceCheckUtils]: 71: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,814 INFO L290 TraceCheckUtils]: 72: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,814 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #102#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,815 INFO L272 TraceCheckUtils]: 74: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,815 INFO L290 TraceCheckUtils]: 75: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,815 INFO L290 TraceCheckUtils]: 76: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,815 INFO L290 TraceCheckUtils]: 77: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,816 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #104#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,816 INFO L290 TraceCheckUtils]: 79: Hoare triple {155312#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,816 INFO L290 TraceCheckUtils]: 80: Hoare triple {155312#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:50,817 INFO L290 TraceCheckUtils]: 81: Hoare triple {155312#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:50,817 INFO L290 TraceCheckUtils]: 82: Hoare triple {155385#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:50,818 INFO L290 TraceCheckUtils]: 83: Hoare triple {155385#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:50,818 INFO L290 TraceCheckUtils]: 84: Hoare triple {155385#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:50,819 INFO L290 TraceCheckUtils]: 85: Hoare triple {155385#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:50,823 INFO L290 TraceCheckUtils]: 86: Hoare triple {155398#(<= ~counter~0 9)} assume !!(#t~post6 < 50);havoc #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:50,824 INFO L290 TraceCheckUtils]: 87: Hoare triple {155398#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:50,825 INFO L290 TraceCheckUtils]: 88: Hoare triple {155398#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:50,839 INFO L290 TraceCheckUtils]: 89: Hoare triple {155408#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:50,840 INFO L290 TraceCheckUtils]: 90: Hoare triple {155408#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:50,840 INFO L290 TraceCheckUtils]: 91: Hoare triple {155408#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155418#(<= |main_#t~post8| 10)} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 92: Hoare triple {155418#(<= |main_#t~post8| 10)} assume !(#t~post8 < 50);havoc #t~post8; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 50);havoc #t~post7; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 05:58:50,841 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 50);havoc #t~post6; {155130#false} is VALID [2022-04-28 05:58:50,842 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {155130#false} is VALID [2022-04-28 05:58:50,842 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 05:58:50,842 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 05:58:50,842 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 05:58:50,842 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:58:50,842 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 50);havoc #t~post6; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 50);havoc #t~post7; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 05:58:51,433 INFO L290 TraceCheckUtils]: 92: Hoare triple {155482#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {155130#false} is VALID [2022-04-28 05:58:51,434 INFO L290 TraceCheckUtils]: 91: Hoare triple {155486#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155482#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:58:51,434 INFO L290 TraceCheckUtils]: 90: Hoare triple {155486#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155486#(< ~counter~0 50)} is VALID [2022-04-28 05:58:51,434 INFO L290 TraceCheckUtils]: 89: Hoare triple {155486#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {155486#(< ~counter~0 50)} is VALID [2022-04-28 05:58:51,436 INFO L290 TraceCheckUtils]: 88: Hoare triple {155496#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155486#(< ~counter~0 50)} is VALID [2022-04-28 05:58:51,437 INFO L290 TraceCheckUtils]: 87: Hoare triple {155496#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155496#(< ~counter~0 49)} is VALID [2022-04-28 05:58:51,437 INFO L290 TraceCheckUtils]: 86: Hoare triple {155496#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {155496#(< ~counter~0 49)} is VALID [2022-04-28 05:58:51,438 INFO L290 TraceCheckUtils]: 85: Hoare triple {155506#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155496#(< ~counter~0 49)} is VALID [2022-04-28 05:58:51,438 INFO L290 TraceCheckUtils]: 84: Hoare triple {155506#(< ~counter~0 48)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155506#(< ~counter~0 48)} is VALID [2022-04-28 05:58:51,438 INFO L290 TraceCheckUtils]: 83: Hoare triple {155506#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {155506#(< ~counter~0 48)} is VALID [2022-04-28 05:58:51,439 INFO L290 TraceCheckUtils]: 82: Hoare triple {155506#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {155506#(< ~counter~0 48)} is VALID [2022-04-28 05:58:51,440 INFO L290 TraceCheckUtils]: 81: Hoare triple {155519#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155506#(< ~counter~0 48)} is VALID [2022-04-28 05:58:51,440 INFO L290 TraceCheckUtils]: 80: Hoare triple {155519#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,440 INFO L290 TraceCheckUtils]: 79: Hoare triple {155519#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,441 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #104#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,441 INFO L290 TraceCheckUtils]: 77: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,441 INFO L290 TraceCheckUtils]: 76: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,441 INFO L290 TraceCheckUtils]: 75: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,441 INFO L272 TraceCheckUtils]: 74: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,441 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #102#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,441 INFO L290 TraceCheckUtils]: 72: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,441 INFO L290 TraceCheckUtils]: 71: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L290 TraceCheckUtils]: 70: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L272 TraceCheckUtils]: 69: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #100#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,442 INFO L290 TraceCheckUtils]: 67: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L290 TraceCheckUtils]: 66: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L290 TraceCheckUtils]: 65: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,442 INFO L272 TraceCheckUtils]: 64: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,443 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #98#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,443 INFO L290 TraceCheckUtils]: 62: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,443 INFO L290 TraceCheckUtils]: 61: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,443 INFO L290 TraceCheckUtils]: 60: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,443 INFO L272 TraceCheckUtils]: 59: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,443 INFO L290 TraceCheckUtils]: 58: Hoare triple {155519#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,444 INFO L290 TraceCheckUtils]: 57: Hoare triple {155592#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155519#(< ~counter~0 47)} is VALID [2022-04-28 05:58:51,445 INFO L290 TraceCheckUtils]: 56: Hoare triple {155592#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155592#(< ~counter~0 46)} is VALID [2022-04-28 05:58:51,445 INFO L290 TraceCheckUtils]: 55: Hoare triple {155592#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {155592#(< ~counter~0 46)} is VALID [2022-04-28 05:58:51,446 INFO L290 TraceCheckUtils]: 54: Hoare triple {155602#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155592#(< ~counter~0 46)} is VALID [2022-04-28 05:58:51,446 INFO L290 TraceCheckUtils]: 53: Hoare triple {155602#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155602#(< ~counter~0 45)} is VALID [2022-04-28 05:58:51,446 INFO L290 TraceCheckUtils]: 52: Hoare triple {155602#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {155602#(< ~counter~0 45)} is VALID [2022-04-28 05:58:51,447 INFO L290 TraceCheckUtils]: 51: Hoare triple {155612#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155602#(< ~counter~0 45)} is VALID [2022-04-28 05:58:51,447 INFO L290 TraceCheckUtils]: 50: Hoare triple {155612#(< ~counter~0 44)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155612#(< ~counter~0 44)} is VALID [2022-04-28 05:58:51,448 INFO L290 TraceCheckUtils]: 49: Hoare triple {155612#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {155612#(< ~counter~0 44)} is VALID [2022-04-28 05:58:51,448 INFO L290 TraceCheckUtils]: 48: Hoare triple {155612#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {155612#(< ~counter~0 44)} is VALID [2022-04-28 05:58:51,449 INFO L290 TraceCheckUtils]: 47: Hoare triple {155625#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155612#(< ~counter~0 44)} is VALID [2022-04-28 05:58:51,449 INFO L290 TraceCheckUtils]: 46: Hoare triple {155625#(< ~counter~0 43)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {155625#(< ~counter~0 43)} assume !(~c~0 >= 2 * ~v~0); {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,450 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #104#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,450 INFO L290 TraceCheckUtils]: 43: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,450 INFO L290 TraceCheckUtils]: 42: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,450 INFO L290 TraceCheckUtils]: 41: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,450 INFO L272 TraceCheckUtils]: 40: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #102#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 38: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 37: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 36: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L272 TraceCheckUtils]: 35: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #100#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 33: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 32: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L290 TraceCheckUtils]: 31: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,451 INFO L272 TraceCheckUtils]: 30: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,452 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #98#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,452 INFO L290 TraceCheckUtils]: 28: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,452 INFO L290 TraceCheckUtils]: 26: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,452 INFO L272 TraceCheckUtils]: 25: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,452 INFO L290 TraceCheckUtils]: 24: Hoare triple {155625#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,453 INFO L290 TraceCheckUtils]: 23: Hoare triple {155698#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155625#(< ~counter~0 43)} is VALID [2022-04-28 05:58:51,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {155698#(< ~counter~0 42)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155698#(< ~counter~0 42)} is VALID [2022-04-28 05:58:51,454 INFO L290 TraceCheckUtils]: 21: Hoare triple {155698#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {155698#(< ~counter~0 42)} is VALID [2022-04-28 05:58:51,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {155708#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155698#(< ~counter~0 42)} is VALID [2022-04-28 05:58:51,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {155708#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155708#(< ~counter~0 41)} is VALID [2022-04-28 05:58:51,455 INFO L290 TraceCheckUtils]: 18: Hoare triple {155708#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {155708#(< ~counter~0 41)} is VALID [2022-04-28 05:58:51,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {155718#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155708#(< ~counter~0 41)} is VALID [2022-04-28 05:58:51,457 INFO L290 TraceCheckUtils]: 16: Hoare triple {155718#(< ~counter~0 40)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,457 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155129#true} {155718#(< ~counter~0 40)} #96#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,457 INFO L290 TraceCheckUtils]: 14: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,457 INFO L290 TraceCheckUtils]: 13: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,457 INFO L272 TraceCheckUtils]: 11: Hoare triple {155718#(< ~counter~0 40)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,457 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155129#true} {155718#(< ~counter~0 40)} #94#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:51,458 INFO L290 TraceCheckUtils]: 8: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:51,458 INFO L290 TraceCheckUtils]: 7: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:51,458 INFO L272 TraceCheckUtils]: 6: Hoare triple {155718#(< ~counter~0 40)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:51,458 INFO L290 TraceCheckUtils]: 5: Hoare triple {155718#(< ~counter~0 40)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,458 INFO L272 TraceCheckUtils]: 4: Hoare triple {155718#(< ~counter~0 40)} call #t~ret9 := main(); {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155718#(< ~counter~0 40)} {155129#true} #108#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {155718#(< ~counter~0 40)} assume true; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,459 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155718#(< ~counter~0 40)} is VALID [2022-04-28 05:58:51,459 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 05:58:51,460 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:58:51,460 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:51,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [264033078] [2022-04-28 05:58:51,460 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:51,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [826267683] [2022-04-28 05:58:51,460 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [826267683] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:51,460 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:51,460 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 05:58:51,460 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:51,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2394529] [2022-04-28 05:58:51,460 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2394529] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:51,460 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:51,460 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:58:51,460 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [28810572] [2022-04-28 05:58:51,460 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:51,461 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:51,461 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:51,461 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:51,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:51,549 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:58:51,549 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:51,550 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:58:51,550 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:58:51,550 INFO L87 Difference]: Start difference. First operand 1765 states and 2340 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:57,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:57,868 INFO L93 Difference]: Finished difference Result 2634 states and 3640 transitions. [2022-04-28 05:58:57,868 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:58:57,868 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:57,868 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:57,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:57,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:57,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:57,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:57,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 285 transitions. [2022-04-28 05:58:58,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:58,325 INFO L225 Difference]: With dead ends: 2634 [2022-04-28 05:58:58,325 INFO L226 Difference]: Without dead ends: 1870 [2022-04-28 05:58:58,327 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 63 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=465, Invalid=657, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:58:58,327 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 215 mSDsluCounter, 254 mSDsCounter, 0 mSdLazyCounter, 164 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 215 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 164 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:58,327 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [215 Valid, 330 Invalid, 272 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 164 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:58:58,329 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1870 states. [2022-04-28 05:59:03,247 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1870 to 1825. [2022-04-28 05:59:03,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:03,249 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:59:03,250 INFO L74 IsIncluded]: Start isIncluded. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:59:03,251 INFO L87 Difference]: Start difference. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:59:03,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:03,347 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:59:03,347 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:59:03,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:03,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:03,351 INFO L74 IsIncluded]: Start isIncluded. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:59:03,352 INFO L87 Difference]: Start difference. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:59:03,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:03,451 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:59:03,451 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:59:03,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:03,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:03,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:03,453 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:03,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:59:03,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2413 transitions. [2022-04-28 05:59:03,609 INFO L78 Accepts]: Start accepts. Automaton has 1825 states and 2413 transitions. Word has length 103 [2022-04-28 05:59:03,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:03,609 INFO L495 AbstractCegarLoop]: Abstraction has 1825 states and 2413 transitions. [2022-04-28 05:59:03,609 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:03,609 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1825 states and 2413 transitions. [2022-04-28 05:59:09,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2413 edges. 2413 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:09,945 INFO L276 IsEmpty]: Start isEmpty. Operand 1825 states and 2413 transitions. [2022-04-28 05:59:09,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:59:09,946 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:09,946 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:59:09,962 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:10,146 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 05:59:10,147 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:10,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:10,147 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 7 times [2022-04-28 05:59:10,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:10,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [379129689] [2022-04-28 05:59:10,147 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:10,147 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 8 times [2022-04-28 05:59:10,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:10,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [200336702] [2022-04-28 05:59:10,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:10,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:10,161 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:10,162 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1089321884] [2022-04-28 05:59:10,162 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:59:10,162 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:10,162 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:10,163 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:10,195 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 05:59:10,254 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:59:10,254 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:10,256 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 05:59:10,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:10,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:10,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 05:59:10,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168454#(<= ~counter~0 0)} {168446#true} #108#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {168454#(<= ~counter~0 0)} call #t~ret9 := main(); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {168454#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,856 INFO L272 TraceCheckUtils]: 6: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,856 INFO L290 TraceCheckUtils]: 9: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,857 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #94#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,857 INFO L272 TraceCheckUtils]: 11: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,857 INFO L290 TraceCheckUtils]: 12: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,858 INFO L290 TraceCheckUtils]: 13: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,858 INFO L290 TraceCheckUtils]: 14: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,858 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #96#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,859 INFO L290 TraceCheckUtils]: 16: Hoare triple {168454#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:10,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {168454#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:10,861 INFO L290 TraceCheckUtils]: 18: Hoare triple {168503#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:10,861 INFO L290 TraceCheckUtils]: 19: Hoare triple {168503#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:10,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {168503#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:10,862 INFO L290 TraceCheckUtils]: 21: Hoare triple {168513#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:10,863 INFO L290 TraceCheckUtils]: 22: Hoare triple {168513#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:10,863 INFO L290 TraceCheckUtils]: 23: Hoare triple {168513#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:10,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {168513#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:10,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {168526#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:10,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {168526#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:10,865 INFO L290 TraceCheckUtils]: 27: Hoare triple {168526#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:10,866 INFO L290 TraceCheckUtils]: 28: Hoare triple {168536#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:10,866 INFO L290 TraceCheckUtils]: 29: Hoare triple {168536#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:10,867 INFO L290 TraceCheckUtils]: 30: Hoare triple {168536#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,867 INFO L290 TraceCheckUtils]: 31: Hoare triple {168546#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,868 INFO L272 TraceCheckUtils]: 32: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,868 INFO L290 TraceCheckUtils]: 33: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,868 INFO L290 TraceCheckUtils]: 34: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,868 INFO L290 TraceCheckUtils]: 35: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,869 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #98#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,869 INFO L272 TraceCheckUtils]: 37: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,870 INFO L290 TraceCheckUtils]: 39: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,871 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #100#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,871 INFO L272 TraceCheckUtils]: 42: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,871 INFO L290 TraceCheckUtils]: 43: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,872 INFO L290 TraceCheckUtils]: 44: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,872 INFO L290 TraceCheckUtils]: 45: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,872 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #102#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,873 INFO L272 TraceCheckUtils]: 47: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,873 INFO L290 TraceCheckUtils]: 48: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,873 INFO L290 TraceCheckUtils]: 49: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,874 INFO L290 TraceCheckUtils]: 50: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,874 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #104#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,874 INFO L290 TraceCheckUtils]: 52: Hoare triple {168546#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,874 INFO L290 TraceCheckUtils]: 53: Hoare triple {168546#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:10,875 INFO L290 TraceCheckUtils]: 54: Hoare triple {168546#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:59:10,876 INFO L290 TraceCheckUtils]: 55: Hoare triple {168619#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:59:10,876 INFO L290 TraceCheckUtils]: 56: Hoare triple {168619#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:59:10,876 INFO L290 TraceCheckUtils]: 57: Hoare triple {168619#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:59:10,877 INFO L290 TraceCheckUtils]: 58: Hoare triple {168619#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:59:10,877 INFO L290 TraceCheckUtils]: 59: Hoare triple {168632#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:59:10,878 INFO L290 TraceCheckUtils]: 60: Hoare triple {168632#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:59:10,879 INFO L290 TraceCheckUtils]: 61: Hoare triple {168632#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:59:10,879 INFO L290 TraceCheckUtils]: 62: Hoare triple {168642#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:59:10,879 INFO L290 TraceCheckUtils]: 63: Hoare triple {168642#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:59:10,880 INFO L290 TraceCheckUtils]: 64: Hoare triple {168642#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,880 INFO L290 TraceCheckUtils]: 65: Hoare triple {168652#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,881 INFO L272 TraceCheckUtils]: 66: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,881 INFO L290 TraceCheckUtils]: 67: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,881 INFO L290 TraceCheckUtils]: 68: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,882 INFO L290 TraceCheckUtils]: 69: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,882 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #98#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,883 INFO L272 TraceCheckUtils]: 71: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,883 INFO L290 TraceCheckUtils]: 72: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,883 INFO L290 TraceCheckUtils]: 73: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,883 INFO L290 TraceCheckUtils]: 74: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,884 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #100#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,884 INFO L272 TraceCheckUtils]: 76: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,885 INFO L290 TraceCheckUtils]: 77: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,885 INFO L290 TraceCheckUtils]: 78: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,885 INFO L290 TraceCheckUtils]: 79: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,886 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #102#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,886 INFO L272 TraceCheckUtils]: 81: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,886 INFO L290 TraceCheckUtils]: 82: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,887 INFO L290 TraceCheckUtils]: 83: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,887 INFO L290 TraceCheckUtils]: 84: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,887 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #104#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,887 INFO L290 TraceCheckUtils]: 86: Hoare triple {168652#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,888 INFO L290 TraceCheckUtils]: 87: Hoare triple {168652#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:59:10,889 INFO L290 TraceCheckUtils]: 88: Hoare triple {168652#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:59:10,889 INFO L290 TraceCheckUtils]: 89: Hoare triple {168725#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:59:10,889 INFO L290 TraceCheckUtils]: 90: Hoare triple {168725#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:59:10,889 INFO L290 TraceCheckUtils]: 91: Hoare triple {168725#(<= ~counter~0 10)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:59:10,890 INFO L290 TraceCheckUtils]: 92: Hoare triple {168725#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:59:10,891 INFO L290 TraceCheckUtils]: 93: Hoare triple {168738#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:59:10,891 INFO L290 TraceCheckUtils]: 94: Hoare triple {168738#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:59:10,891 INFO L290 TraceCheckUtils]: 95: Hoare triple {168738#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168748#(<= |main_#t~post7| 11)} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 96: Hoare triple {168748#(<= |main_#t~post7| 11)} assume !(#t~post7 < 50);havoc #t~post7; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 50);havoc #t~post6; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 05:59:10,892 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 133 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:59:10,892 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:11,518 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 05:59:11,518 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 05:59:11,518 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 05:59:11,518 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {168447#false} is VALID [2022-04-28 05:59:11,518 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 50);havoc #t~post6; {168447#false} is VALID [2022-04-28 05:59:11,518 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 05:59:11,519 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168447#false} is VALID [2022-04-28 05:59:11,519 INFO L290 TraceCheckUtils]: 96: Hoare triple {168794#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {168447#false} is VALID [2022-04-28 05:59:11,519 INFO L290 TraceCheckUtils]: 95: Hoare triple {168798#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168794#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:59:11,520 INFO L290 TraceCheckUtils]: 94: Hoare triple {168798#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168798#(< ~counter~0 50)} is VALID [2022-04-28 05:59:11,520 INFO L290 TraceCheckUtils]: 93: Hoare triple {168798#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {168798#(< ~counter~0 50)} is VALID [2022-04-28 05:59:11,522 INFO L290 TraceCheckUtils]: 92: Hoare triple {168808#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168798#(< ~counter~0 50)} is VALID [2022-04-28 05:59:11,523 INFO L290 TraceCheckUtils]: 91: Hoare triple {168808#(< ~counter~0 49)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168808#(< ~counter~0 49)} is VALID [2022-04-28 05:59:11,523 INFO L290 TraceCheckUtils]: 90: Hoare triple {168808#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {168808#(< ~counter~0 49)} is VALID [2022-04-28 05:59:11,523 INFO L290 TraceCheckUtils]: 89: Hoare triple {168808#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {168808#(< ~counter~0 49)} is VALID [2022-04-28 05:59:11,524 INFO L290 TraceCheckUtils]: 88: Hoare triple {168821#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168808#(< ~counter~0 49)} is VALID [2022-04-28 05:59:11,525 INFO L290 TraceCheckUtils]: 87: Hoare triple {168821#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,525 INFO L290 TraceCheckUtils]: 86: Hoare triple {168821#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,526 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #104#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,526 INFO L290 TraceCheckUtils]: 84: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,526 INFO L290 TraceCheckUtils]: 83: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,526 INFO L290 TraceCheckUtils]: 82: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,526 INFO L272 TraceCheckUtils]: 81: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,527 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #102#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,527 INFO L290 TraceCheckUtils]: 79: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,527 INFO L290 TraceCheckUtils]: 78: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,527 INFO L290 TraceCheckUtils]: 77: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,527 INFO L272 TraceCheckUtils]: 76: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,528 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #100#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,528 INFO L290 TraceCheckUtils]: 74: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,528 INFO L290 TraceCheckUtils]: 73: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,528 INFO L290 TraceCheckUtils]: 72: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,528 INFO L272 TraceCheckUtils]: 71: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,529 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #98#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,529 INFO L290 TraceCheckUtils]: 69: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,529 INFO L290 TraceCheckUtils]: 68: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,529 INFO L290 TraceCheckUtils]: 67: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,529 INFO L272 TraceCheckUtils]: 66: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,529 INFO L290 TraceCheckUtils]: 65: Hoare triple {168821#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,531 INFO L290 TraceCheckUtils]: 64: Hoare triple {168894#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168821#(< ~counter~0 48)} is VALID [2022-04-28 05:59:11,531 INFO L290 TraceCheckUtils]: 63: Hoare triple {168894#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168894#(< ~counter~0 47)} is VALID [2022-04-28 05:59:11,531 INFO L290 TraceCheckUtils]: 62: Hoare triple {168894#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {168894#(< ~counter~0 47)} is VALID [2022-04-28 05:59:11,532 INFO L290 TraceCheckUtils]: 61: Hoare triple {168904#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168894#(< ~counter~0 47)} is VALID [2022-04-28 05:59:11,533 INFO L290 TraceCheckUtils]: 60: Hoare triple {168904#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168904#(< ~counter~0 46)} is VALID [2022-04-28 05:59:11,533 INFO L290 TraceCheckUtils]: 59: Hoare triple {168904#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {168904#(< ~counter~0 46)} is VALID [2022-04-28 05:59:11,534 INFO L290 TraceCheckUtils]: 58: Hoare triple {168914#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168904#(< ~counter~0 46)} is VALID [2022-04-28 05:59:11,535 INFO L290 TraceCheckUtils]: 57: Hoare triple {168914#(< ~counter~0 45)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168914#(< ~counter~0 45)} is VALID [2022-04-28 05:59:11,535 INFO L290 TraceCheckUtils]: 56: Hoare triple {168914#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {168914#(< ~counter~0 45)} is VALID [2022-04-28 05:59:11,535 INFO L290 TraceCheckUtils]: 55: Hoare triple {168914#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {168914#(< ~counter~0 45)} is VALID [2022-04-28 05:59:11,536 INFO L290 TraceCheckUtils]: 54: Hoare triple {168927#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168914#(< ~counter~0 45)} is VALID [2022-04-28 05:59:11,537 INFO L290 TraceCheckUtils]: 53: Hoare triple {168927#(< ~counter~0 44)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,537 INFO L290 TraceCheckUtils]: 52: Hoare triple {168927#(< ~counter~0 44)} assume !(~c~0 >= 2 * ~v~0); {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,537 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #104#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,538 INFO L290 TraceCheckUtils]: 50: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,538 INFO L290 TraceCheckUtils]: 49: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,538 INFO L290 TraceCheckUtils]: 48: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,538 INFO L272 TraceCheckUtils]: 47: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,538 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #102#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,538 INFO L290 TraceCheckUtils]: 45: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,539 INFO L290 TraceCheckUtils]: 44: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,539 INFO L290 TraceCheckUtils]: 43: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,539 INFO L272 TraceCheckUtils]: 42: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,539 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #100#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,539 INFO L290 TraceCheckUtils]: 40: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,540 INFO L290 TraceCheckUtils]: 39: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,540 INFO L290 TraceCheckUtils]: 38: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,540 INFO L272 TraceCheckUtils]: 37: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,540 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #98#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,540 INFO L290 TraceCheckUtils]: 35: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,540 INFO L290 TraceCheckUtils]: 34: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,541 INFO L290 TraceCheckUtils]: 33: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,541 INFO L272 TraceCheckUtils]: 32: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,541 INFO L290 TraceCheckUtils]: 31: Hoare triple {168927#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,542 INFO L290 TraceCheckUtils]: 30: Hoare triple {169000#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168927#(< ~counter~0 44)} is VALID [2022-04-28 05:59:11,543 INFO L290 TraceCheckUtils]: 29: Hoare triple {169000#(< ~counter~0 43)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {169000#(< ~counter~0 43)} is VALID [2022-04-28 05:59:11,543 INFO L290 TraceCheckUtils]: 28: Hoare triple {169000#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {169000#(< ~counter~0 43)} is VALID [2022-04-28 05:59:11,544 INFO L290 TraceCheckUtils]: 27: Hoare triple {169010#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169000#(< ~counter~0 43)} is VALID [2022-04-28 05:59:11,544 INFO L290 TraceCheckUtils]: 26: Hoare triple {169010#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169010#(< ~counter~0 42)} is VALID [2022-04-28 05:59:11,545 INFO L290 TraceCheckUtils]: 25: Hoare triple {169010#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {169010#(< ~counter~0 42)} is VALID [2022-04-28 05:59:11,546 INFO L290 TraceCheckUtils]: 24: Hoare triple {169020#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169010#(< ~counter~0 42)} is VALID [2022-04-28 05:59:11,546 INFO L290 TraceCheckUtils]: 23: Hoare triple {169020#(< ~counter~0 41)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {169020#(< ~counter~0 41)} is VALID [2022-04-28 05:59:11,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {169020#(< ~counter~0 41)} assume !(~c~0 >= ~b~0); {169020#(< ~counter~0 41)} is VALID [2022-04-28 05:59:11,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {169020#(< ~counter~0 41)} assume !!(#t~post7 < 50);havoc #t~post7; {169020#(< ~counter~0 41)} is VALID [2022-04-28 05:59:11,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {169033#(< ~counter~0 40)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169020#(< ~counter~0 41)} is VALID [2022-04-28 05:59:11,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {169033#(< ~counter~0 40)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169033#(< ~counter~0 40)} is VALID [2022-04-28 05:59:11,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {169033#(< ~counter~0 40)} assume !!(#t~post6 < 50);havoc #t~post6; {169033#(< ~counter~0 40)} is VALID [2022-04-28 05:59:11,550 INFO L290 TraceCheckUtils]: 17: Hoare triple {169043#(< ~counter~0 39)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169033#(< ~counter~0 40)} is VALID [2022-04-28 05:59:11,550 INFO L290 TraceCheckUtils]: 16: Hoare triple {169043#(< ~counter~0 39)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,550 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168446#true} {169043#(< ~counter~0 39)} #96#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 14: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L272 TraceCheckUtils]: 11: Hoare triple {169043#(< ~counter~0 39)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168446#true} {169043#(< ~counter~0 39)} #94#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 9: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:59:11,551 INFO L290 TraceCheckUtils]: 7: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:59:11,552 INFO L272 TraceCheckUtils]: 6: Hoare triple {169043#(< ~counter~0 39)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:59:11,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {169043#(< ~counter~0 39)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {169043#(< ~counter~0 39)} call #t~ret9 := main(); {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,553 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169043#(< ~counter~0 39)} {168446#true} #108#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {169043#(< ~counter~0 39)} assume true; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {169043#(< ~counter~0 39)} is VALID [2022-04-28 05:59:11,553 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 05:59:11,554 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 69 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:59:11,554 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:11,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [200336702] [2022-04-28 05:59:11,554 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:11,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1089321884] [2022-04-28 05:59:11,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1089321884] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:11,554 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:11,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 05:59:11,555 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:11,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [379129689] [2022-04-28 05:59:11,555 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [379129689] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:11,555 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:11,556 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:59:11,556 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1426959744] [2022-04-28 05:59:11,556 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:11,556 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:59:11,556 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:11,556 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:11,655 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:11,656 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:59:11,656 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:11,656 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:59:11,656 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:59:11,656 INFO L87 Difference]: Start difference. First operand 1825 states and 2413 transitions. Second operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:19,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:19,131 INFO L93 Difference]: Finished difference Result 2758 states and 3762 transitions. [2022-04-28 05:59:19,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 05:59:19,131 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:59:19,132 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:19,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:19,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:59:19,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:19,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:59:19,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 314 transitions. [2022-04-28 05:59:19,457 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:19,660 INFO L225 Difference]: With dead ends: 2758 [2022-04-28 05:59:19,660 INFO L226 Difference]: Without dead ends: 2189 [2022-04-28 05:59:19,662 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=556, Invalid=776, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 05:59:19,662 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 275 mSDsluCounter, 271 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 167 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 275 SdHoareTripleChecker+Valid, 348 SdHoareTripleChecker+Invalid, 345 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 167 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:59:19,662 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [275 Valid, 348 Invalid, 345 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [167 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:59:19,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2189 states. [2022-04-28 05:59:25,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2189 to 2064. [2022-04-28 05:59:25,278 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:25,280 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:59:25,281 INFO L74 IsIncluded]: Start isIncluded. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:59:25,282 INFO L87 Difference]: Start difference. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:59:25,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:25,409 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:59:25,409 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:59:25,411 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:25,412 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:25,413 INFO L74 IsIncluded]: Start isIncluded. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:59:25,415 INFO L87 Difference]: Start difference. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:59:25,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:25,537 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:59:25,537 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:59:25,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:25,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:25,540 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:25,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:25,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:59:25,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 2722 transitions. [2022-04-28 05:59:25,734 INFO L78 Accepts]: Start accepts. Automaton has 2064 states and 2722 transitions. Word has length 104 [2022-04-28 05:59:25,734 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:25,734 INFO L495 AbstractCegarLoop]: Abstraction has 2064 states and 2722 transitions. [2022-04-28 05:59:25,734 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:59:25,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2064 states and 2722 transitions. [2022-04-28 05:59:33,146 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2722 edges. 2722 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:33,147 INFO L276 IsEmpty]: Start isEmpty. Operand 2064 states and 2722 transitions. [2022-04-28 05:59:33,148 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 05:59:33,148 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:33,148 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-28 05:59:33,164 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:33,351 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 05:59:33,351 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:33,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:33,352 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 7 times [2022-04-28 05:59:33,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:33,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1365191528] [2022-04-28 05:59:33,352 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:33,352 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 8 times [2022-04-28 05:59:33,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:33,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2107107277] [2022-04-28 05:59:33,353 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:33,353 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:33,363 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:33,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1863572039] [2022-04-28 05:59:33,363 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:59:33,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:33,363 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:33,364 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:33,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 05:59:33,426 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:59:33,426 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:33,427 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-28 05:59:33,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:33,444 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:34,862 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 05:59:34,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183137#true} is VALID [2022-04-28 05:59:34,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,862 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,863 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 05:59:34,864 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,864 INFO L290 TraceCheckUtils]: 17: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,865 INFO L290 TraceCheckUtils]: 19: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,867 INFO L290 TraceCheckUtils]: 22: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,868 INFO L290 TraceCheckUtils]: 24: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,868 INFO L272 TraceCheckUtils]: 25: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,868 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,868 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,868 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,869 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,869 INFO L272 TraceCheckUtils]: 30: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,869 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,869 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,870 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,870 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,871 INFO L272 TraceCheckUtils]: 35: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,871 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,871 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,871 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,872 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,872 INFO L272 TraceCheckUtils]: 40: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,872 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,872 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,872 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,873 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,874 INFO L290 TraceCheckUtils]: 45: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,874 INFO L290 TraceCheckUtils]: 46: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,875 INFO L290 TraceCheckUtils]: 47: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,875 INFO L272 TraceCheckUtils]: 48: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,875 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,875 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,875 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,876 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,876 INFO L272 TraceCheckUtils]: 53: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,877 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,877 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,877 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,878 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,878 INFO L272 TraceCheckUtils]: 58: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,878 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,878 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,878 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,879 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,879 INFO L272 TraceCheckUtils]: 63: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,879 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,879 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,879 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,880 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,880 INFO L290 TraceCheckUtils]: 68: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,882 INFO L290 TraceCheckUtils]: 69: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,882 INFO L290 TraceCheckUtils]: 70: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,883 INFO L290 TraceCheckUtils]: 71: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,883 INFO L290 TraceCheckUtils]: 72: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,883 INFO L290 TraceCheckUtils]: 73: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,884 INFO L290 TraceCheckUtils]: 74: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,884 INFO L272 TraceCheckUtils]: 75: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,884 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:34,885 INFO L290 TraceCheckUtils]: 77: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,885 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,886 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,886 INFO L272 TraceCheckUtils]: 80: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,886 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:34,886 INFO L290 TraceCheckUtils]: 82: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,886 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,887 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,887 INFO L272 TraceCheckUtils]: 85: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,887 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:34,888 INFO L290 TraceCheckUtils]: 87: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,888 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:34,889 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,889 INFO L272 TraceCheckUtils]: 90: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:34,889 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:34,889 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:34,889 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:34,890 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,890 INFO L290 TraceCheckUtils]: 95: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,891 INFO L290 TraceCheckUtils]: 96: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,891 INFO L290 TraceCheckUtils]: 97: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,892 INFO L290 TraceCheckUtils]: 98: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,892 INFO L290 TraceCheckUtils]: 99: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:59:34,893 INFO L290 TraceCheckUtils]: 100: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:59:34,893 INFO L290 TraceCheckUtils]: 101: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:59:34,894 INFO L290 TraceCheckUtils]: 102: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:59:34,894 INFO L290 TraceCheckUtils]: 103: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {183462#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:59:34,895 INFO L272 TraceCheckUtils]: 104: Hoare triple {183462#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:34,895 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:34,895 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 05:59:34,896 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 05:59:34,896 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-28 05:59:34,896 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:26,919 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 06:00:26,920 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 06:00:26,920 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:26,922 INFO L272 TraceCheckUtils]: 104: Hoare triple {183486#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:00:26,922 INFO L290 TraceCheckUtils]: 103: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {183486#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:00:26,923 INFO L290 TraceCheckUtils]: 102: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:00:26,923 INFO L290 TraceCheckUtils]: 101: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:00:27,300 INFO L290 TraceCheckUtils]: 100: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:00:27,301 INFO L290 TraceCheckUtils]: 99: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,301 INFO L290 TraceCheckUtils]: 98: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,301 INFO L290 TraceCheckUtils]: 97: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,604 INFO L290 TraceCheckUtils]: 96: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,604 INFO L290 TraceCheckUtils]: 95: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,605 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,605 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:27,605 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:27,605 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:27,605 INFO L272 TraceCheckUtils]: 90: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:27,606 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,607 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,607 INFO L290 TraceCheckUtils]: 87: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,607 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:00:27,607 INFO L272 TraceCheckUtils]: 85: Hoare triple {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:27,608 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,609 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,609 INFO L290 TraceCheckUtils]: 82: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,609 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:00:27,609 INFO L272 TraceCheckUtils]: 80: Hoare triple {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:27,610 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,611 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,611 INFO L290 TraceCheckUtils]: 77: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:27,611 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:00:27,611 INFO L272 TraceCheckUtils]: 75: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:27,612 INFO L290 TraceCheckUtils]: 74: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:27,613 INFO L290 TraceCheckUtils]: 73: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:28,329 INFO L290 TraceCheckUtils]: 72: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 71: Hoare triple {183137#true} assume !!(#t~post7 < 50);havoc #t~post7; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 70: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 69: Hoare triple {183137#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 68: Hoare triple {183137#true} assume !(~c~0 >= 2 * ~v~0); {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L272 TraceCheckUtils]: 63: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,330 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L272 TraceCheckUtils]: 58: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L272 TraceCheckUtils]: 53: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,331 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L272 TraceCheckUtils]: 48: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 47: Hoare triple {183137#true} assume !!(#t~post8 < 50);havoc #t~post8; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 46: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 45: Hoare triple {183137#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L272 TraceCheckUtils]: 40: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,332 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,334 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,334 INFO L272 TraceCheckUtils]: 35: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,334 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L272 TraceCheckUtils]: 30: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L272 TraceCheckUtils]: 25: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 24: Hoare triple {183137#true} assume !!(#t~post8 < 50);havoc #t~post8; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 23: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 22: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183137#true} is VALID [2022-04-28 06:00:28,335 INFO L290 TraceCheckUtils]: 21: Hoare triple {183137#true} assume !!(#t~post7 < 50);havoc #t~post7; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 20: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 19: Hoare triple {183137#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 18: Hoare triple {183137#true} assume !!(#t~post6 < 50);havoc #t~post6; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 17: Hoare triple {183137#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 06:00:28,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183137#true} is VALID [2022-04-28 06:00:28,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 06:00:28,340 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-28 06:00:28,340 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:28,342 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2107107277] [2022-04-28 06:00:28,343 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:28,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1863572039] [2022-04-28 06:00:28,343 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1863572039] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:28,343 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:28,343 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-28 06:00:28,343 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:28,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1365191528] [2022-04-28 06:00:28,343 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1365191528] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:28,343 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:28,343 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 06:00:28,344 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [424285615] [2022-04-28 06:00:28,344 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:28,344 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 06:00:28,344 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:28,344 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:28,466 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:28,467 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 06:00:28,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:28,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 06:00:28,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-28 06:00:28,467 INFO L87 Difference]: Start difference. First operand 2064 states and 2722 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:38,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:38,251 INFO L93 Difference]: Finished difference Result 2130 states and 2803 transitions. [2022-04-28 06:00:38,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 06:00:38,252 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 06:00:38,252 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:38,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:38,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 06:00:38,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:38,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 06:00:38,254 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 179 transitions. [2022-04-28 06:00:38,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:38,772 INFO L225 Difference]: With dead ends: 2130 [2022-04-28 06:00:38,772 INFO L226 Difference]: Without dead ends: 2125 [2022-04-28 06:00:38,773 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=122, Invalid=634, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:00:38,773 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 80 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 903 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 547 SdHoareTripleChecker+Invalid, 989 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 903 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.7s IncrementalHoareTripleChecker+Time [2022-04-28 06:00:38,773 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 547 Invalid, 989 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 903 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-28 06:00:38,774 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2125 states. [2022-04-28 06:00:45,649 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2125 to 2071. [2022-04-28 06:00:45,649 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:45,652 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:45,654 INFO L74 IsIncluded]: Start isIncluded. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:45,655 INFO L87 Difference]: Start difference. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:45,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:45,833 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:45,833 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:45,836 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:45,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:45,839 INFO L74 IsIncluded]: Start isIncluded. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:45,841 INFO L87 Difference]: Start difference. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:46,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:46,032 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:46,032 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:46,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:46,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:46,036 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:46,036 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:46,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:46,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2071 states to 2071 states and 2721 transitions. [2022-04-28 06:00:46,320 INFO L78 Accepts]: Start accepts. Automaton has 2071 states and 2721 transitions. Word has length 108 [2022-04-28 06:00:46,320 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:46,320 INFO L495 AbstractCegarLoop]: Abstraction has 2071 states and 2721 transitions. [2022-04-28 06:00:46,320 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:46,320 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2071 states and 2721 transitions. [2022-04-28 06:00:56,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2721 edges. 2721 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:56,140 INFO L276 IsEmpty]: Start isEmpty. Operand 2071 states and 2721 transitions. [2022-04-28 06:00:56,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 06:00:56,141 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:56,142 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-28 06:00:56,203 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:56,342 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable40 [2022-04-28 06:00:56,342 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:56,342 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:56,343 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 9 times [2022-04-28 06:00:56,343 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:56,343 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [999228182] [2022-04-28 06:00:56,343 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:56,343 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 10 times [2022-04-28 06:00:56,343 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:56,343 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1463853370] [2022-04-28 06:00:56,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:56,344 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:56,355 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:56,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [623056435] [2022-04-28 06:00:56,356 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:00:56,356 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:56,356 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:56,359 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:56,362 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 06:00:56,428 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:00:56,428 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:56,430 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 06:00:56,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:56,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:20,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 06:01:20,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,369 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 06:01:20,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:01:20,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:01:20,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} {196468#true} #94#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 06:01:20,370 INFO L272 TraceCheckUtils]: 11: Hoare triple {196505#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,371 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,371 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196505#(<= 1 main_~x~0)} #96#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 06:01:20,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {196505#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,373 INFO L290 TraceCheckUtils]: 18: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,373 INFO L290 TraceCheckUtils]: 19: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:01:20,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:01:20,374 INFO L290 TraceCheckUtils]: 21: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:01:20,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:01:20,375 INFO L290 TraceCheckUtils]: 23: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,375 INFO L290 TraceCheckUtils]: 24: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,376 INFO L290 TraceCheckUtils]: 25: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,376 INFO L290 TraceCheckUtils]: 26: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,377 INFO L290 TraceCheckUtils]: 28: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:01:20,378 INFO L290 TraceCheckUtils]: 29: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,379 INFO L272 TraceCheckUtils]: 32: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,379 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,379 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,380 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,380 INFO L272 TraceCheckUtils]: 37: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,380 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,380 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,381 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,381 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,381 INFO L272 TraceCheckUtils]: 42: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,382 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,382 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,382 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,382 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,383 INFO L272 TraceCheckUtils]: 47: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,383 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,383 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,383 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,384 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:01:20,384 INFO L290 TraceCheckUtils]: 52: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:01:20,385 INFO L290 TraceCheckUtils]: 53: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:01:20,385 INFO L290 TraceCheckUtils]: 54: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 50);havoc #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:01:20,385 INFO L272 TraceCheckUtils]: 55: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,386 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:20,386 INFO L290 TraceCheckUtils]: 57: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,386 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,388 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,388 INFO L272 TraceCheckUtils]: 60: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,388 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,388 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,388 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,389 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,389 INFO L272 TraceCheckUtils]: 65: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,389 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,389 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,389 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,390 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,390 INFO L272 TraceCheckUtils]: 70: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,390 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,390 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,390 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,391 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,393 INFO L290 TraceCheckUtils]: 75: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,393 INFO L290 TraceCheckUtils]: 76: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,394 INFO L290 TraceCheckUtils]: 77: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,394 INFO L272 TraceCheckUtils]: 78: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,394 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,394 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,394 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,395 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #98#return; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,395 INFO L272 TraceCheckUtils]: 83: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,396 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:20,396 INFO L290 TraceCheckUtils]: 85: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,396 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,397 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,397 INFO L272 TraceCheckUtils]: 88: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,398 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:20,398 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:20,398 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:20,399 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,399 INFO L272 TraceCheckUtils]: 93: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:20,399 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:20,399 INFO L290 TraceCheckUtils]: 95: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,400 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:20,400 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,401 INFO L290 TraceCheckUtils]: 98: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,402 INFO L290 TraceCheckUtils]: 99: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,403 INFO L290 TraceCheckUtils]: 100: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,404 INFO L290 TraceCheckUtils]: 101: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,405 INFO L290 TraceCheckUtils]: 102: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:01:20,407 INFO L290 TraceCheckUtils]: 103: Hoare triple {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,408 INFO L290 TraceCheckUtils]: 104: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,409 INFO L290 TraceCheckUtils]: 105: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,410 INFO L290 TraceCheckUtils]: 106: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:01:20,411 INFO L272 TraceCheckUtils]: 107: Hoare triple {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:01:20,411 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:20,412 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 06:01:20,412 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 06:01:20,413 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 84 proven. 64 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 06:01:20,413 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:02:09,499 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 06:02:09,499 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 06:02:09,500 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:09,501 INFO L272 TraceCheckUtils]: 107: Hoare triple {196832#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:02:09,501 INFO L290 TraceCheckUtils]: 106: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {196832#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:02:09,502 INFO L290 TraceCheckUtils]: 105: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:02:09,502 INFO L290 TraceCheckUtils]: 104: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:02:09,787 INFO L290 TraceCheckUtils]: 103: Hoare triple {196846#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:02:09,788 INFO L290 TraceCheckUtils]: 102: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {196846#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:09,789 INFO L290 TraceCheckUtils]: 101: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:09,789 INFO L290 TraceCheckUtils]: 100: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,714 INFO L290 TraceCheckUtils]: 99: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,715 INFO L290 TraceCheckUtils]: 98: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,716 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,717 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,717 INFO L290 TraceCheckUtils]: 95: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,718 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:02:10,718 INFO L272 TraceCheckUtils]: 93: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,719 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,719 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:10,719 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:10,719 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:10,719 INFO L272 TraceCheckUtils]: 88: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,720 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,720 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,721 INFO L290 TraceCheckUtils]: 85: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,721 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:02:10,721 INFO L272 TraceCheckUtils]: 83: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,722 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,722 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:10,722 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:10,722 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:10,722 INFO L272 TraceCheckUtils]: 78: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,723 INFO L290 TraceCheckUtils]: 77: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,724 INFO L290 TraceCheckUtils]: 76: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,800 INFO L290 TraceCheckUtils]: 75: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:02:10,801 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:10,801 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:10,801 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:10,802 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:10,802 INFO L272 TraceCheckUtils]: 70: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,803 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:10,803 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:10,803 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:10,803 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:10,803 INFO L272 TraceCheckUtils]: 65: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,804 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:10,804 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:10,804 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:10,804 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:10,804 INFO L272 TraceCheckUtils]: 60: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,805 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:10,806 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,806 INFO L290 TraceCheckUtils]: 57: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:10,806 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:02:10,807 INFO L272 TraceCheckUtils]: 55: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:10,807 INFO L290 TraceCheckUtils]: 54: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 50);havoc #t~post8; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:10,808 INFO L290 TraceCheckUtils]: 53: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:11,016 INFO L290 TraceCheckUtils]: 52: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:02:11,017 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,017 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,017 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,017 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,018 INFO L272 TraceCheckUtils]: 47: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,018 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,018 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,019 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,019 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,019 INFO L272 TraceCheckUtils]: 42: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,020 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #100#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,020 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,020 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,020 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,020 INFO L272 TraceCheckUtils]: 37: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,021 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #98#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,021 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,021 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,021 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,021 INFO L272 TraceCheckUtils]: 32: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,022 INFO L290 TraceCheckUtils]: 31: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(#t~post8 < 50);havoc #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,024 INFO L290 TraceCheckUtils]: 29: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:02:11,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(#t~post7 < 50);havoc #t~post7; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:02:11,025 INFO L290 TraceCheckUtils]: 27: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 26: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 25: Hoare triple {196468#true} assume !!(#t~post6 < 50);havoc #t~post6; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 24: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 23: Hoare triple {196468#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 22: Hoare triple {196468#true} assume !(~c~0 >= ~b~0); {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 21: Hoare triple {196468#true} assume !!(#t~post7 < 50);havoc #t~post7; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 20: Hoare triple {196468#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 19: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 18: Hoare triple {196468#true} assume !!(#t~post6 < 50);havoc #t~post6; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 17: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 06:02:11,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {196468#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196468#true} #96#return; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L272 TraceCheckUtils]: 11: Hoare triple {196468#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196468#true} {196468#true} #94#return; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 06:02:11,030 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 06:02:11,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:02:11,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196468#true} is VALID [2022-04-28 06:02:11,031 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 06:02:11,032 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 97 proven. 45 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-28 06:02:11,032 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:11,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1463853370] [2022-04-28 06:02:11,032 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:11,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [623056435] [2022-04-28 06:02:11,032 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [623056435] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:02:11,032 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:02:11,032 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-28 06:02:11,032 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:11,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [999228182] [2022-04-28 06:02:11,033 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [999228182] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:11,033 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:11,033 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 06:02:11,033 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1834673423] [2022-04-28 06:02:11,033 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:11,034 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:02:11,034 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:11,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:11,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:11,198 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 06:02:11,198 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:11,198 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 06:02:11,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=952, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:02:11,199 INFO L87 Difference]: Start difference. First operand 2071 states and 2721 transitions. Second operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:30,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:30,336 INFO L93 Difference]: Finished difference Result 2221 states and 2903 transitions. [2022-04-28 06:02:30,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 06:02:30,336 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:02:30,337 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:30,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:30,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:02:30,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:30,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:02:30,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 215 transitions. [2022-04-28 06:02:30,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:31,130 INFO L225 Difference]: With dead ends: 2221 [2022-04-28 06:02:31,130 INFO L226 Difference]: Without dead ends: 2218 [2022-04-28 06:02:31,131 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 188 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 440 ImplicationChecksByTransitivity, 5.2s TimeCoverageRelationStatistics Valid=274, Invalid=1532, Unknown=0, NotChecked=0, Total=1806 [2022-04-28 06:02:31,133 INFO L413 NwaCegarLoop]: 81 mSDtfsCounter, 140 mSDsluCounter, 694 mSDsCounter, 0 mSdLazyCounter, 1446 mSolverCounterSat, 99 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 775 SdHoareTripleChecker+Invalid, 1545 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 99 IncrementalHoareTripleChecker+Valid, 1446 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.0s IncrementalHoareTripleChecker+Time [2022-04-28 06:02:31,133 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 775 Invalid, 1545 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [99 Valid, 1446 Invalid, 0 Unknown, 0 Unchecked, 5.0s Time] [2022-04-28 06:02:31,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2218 states. [2022-04-28 06:02:37,096 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2218 to 2137. [2022-04-28 06:02:37,096 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:37,098 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:37,100 INFO L74 IsIncluded]: Start isIncluded. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:37,101 INFO L87 Difference]: Start difference. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:37,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:37,247 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:02:37,247 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:02:37,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:37,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:37,252 INFO L74 IsIncluded]: Start isIncluded. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:02:37,253 INFO L87 Difference]: Start difference. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:02:37,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:37,395 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:02:37,395 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:02:37,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:37,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:37,398 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:37,398 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:37,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:37,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2137 states to 2137 states and 2784 transitions. [2022-04-28 06:02:37,619 INFO L78 Accepts]: Start accepts. Automaton has 2137 states and 2784 transitions. Word has length 111 [2022-04-28 06:02:37,619 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:37,619 INFO L495 AbstractCegarLoop]: Abstraction has 2137 states and 2784 transitions. [2022-04-28 06:02:37,619 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:37,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2137 states and 2784 transitions. [2022-04-28 06:02:47,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2784 edges. 2784 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:47,700 INFO L276 IsEmpty]: Start isEmpty. Operand 2137 states and 2784 transitions. [2022-04-28 06:02:47,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-28 06:02:47,702 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:47,702 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:02:47,728 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:47,902 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:47,903 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:47,903 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:47,903 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 7 times [2022-04-28 06:02:47,903 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:47,903 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [984853343] [2022-04-28 06:02:47,904 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:47,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 8 times [2022-04-28 06:02:47,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:47,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [964066845] [2022-04-28 06:02:47,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:47,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:47,927 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:47,927 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1167570460] [2022-04-28 06:02:47,933 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:02:47,934 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:47,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:47,942 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:47,984 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 06:02:48,033 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:02:48,034 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:48,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 06:02:48,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:48,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:12,074 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:33,581 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:33,616 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:33,949 INFO L272 TraceCheckUtils]: 0: Hoare triple {210337#true} call ULTIMATE.init(); {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {210337#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210337#true} {210337#true} #108#return; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L272 TraceCheckUtils]: 4: Hoare triple {210337#true} call #t~ret9 := main(); {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 5: Hoare triple {210337#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L272 TraceCheckUtils]: 6: Hoare triple {210337#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210337#true} {210337#true} #94#return; {210337#true} is VALID [2022-04-28 06:03:33,949 INFO L272 TraceCheckUtils]: 11: Hoare triple {210337#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,950 INFO L290 TraceCheckUtils]: 12: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:33,950 INFO L290 TraceCheckUtils]: 13: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:33,950 INFO L290 TraceCheckUtils]: 14: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,950 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210337#true} {210337#true} #96#return; {210337#true} is VALID [2022-04-28 06:03:33,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {210337#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:33,951 INFO L290 TraceCheckUtils]: 17: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:33,951 INFO L290 TraceCheckUtils]: 18: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:33,952 INFO L290 TraceCheckUtils]: 19: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:33,952 INFO L290 TraceCheckUtils]: 20: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:33,952 INFO L290 TraceCheckUtils]: 21: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:33,953 INFO L290 TraceCheckUtils]: 22: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:33,953 INFO L290 TraceCheckUtils]: 23: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,954 INFO L290 TraceCheckUtils]: 25: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,955 INFO L290 TraceCheckUtils]: 26: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,955 INFO L290 TraceCheckUtils]: 27: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,956 INFO L290 TraceCheckUtils]: 28: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,956 INFO L290 TraceCheckUtils]: 29: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,957 INFO L290 TraceCheckUtils]: 30: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,957 INFO L290 TraceCheckUtils]: 31: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post8 < 50);havoc #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:33,957 INFO L272 TraceCheckUtils]: 32: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,957 INFO L290 TraceCheckUtils]: 33: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:33,958 INFO L290 TraceCheckUtils]: 34: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:33,958 INFO L290 TraceCheckUtils]: 35: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:33,959 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #98#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:33,959 INFO L272 TraceCheckUtils]: 37: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,959 INFO L290 TraceCheckUtils]: 38: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:33,959 INFO L290 TraceCheckUtils]: 39: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:33,960 INFO L290 TraceCheckUtils]: 40: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,960 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:33,960 INFO L272 TraceCheckUtils]: 42: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,960 INFO L290 TraceCheckUtils]: 43: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:33,961 INFO L290 TraceCheckUtils]: 44: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:33,961 INFO L290 TraceCheckUtils]: 45: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,961 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:33,961 INFO L272 TraceCheckUtils]: 47: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:33,962 INFO L290 TraceCheckUtils]: 48: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:33,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:33,962 INFO L290 TraceCheckUtils]: 50: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:33,962 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:33,963 INFO L290 TraceCheckUtils]: 52: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:33,966 INFO L290 TraceCheckUtils]: 53: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:33,967 INFO L290 TraceCheckUtils]: 54: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:33,967 INFO L290 TraceCheckUtils]: 55: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:33,968 INFO L290 TraceCheckUtils]: 56: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:35,972 WARN L290 TraceCheckUtils]: 57: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is UNKNOWN [2022-04-28 06:03:35,976 INFO L290 TraceCheckUtils]: 58: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,977 INFO L290 TraceCheckUtils]: 59: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,979 INFO L290 TraceCheckUtils]: 60: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,980 INFO L290 TraceCheckUtils]: 61: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,982 INFO L290 TraceCheckUtils]: 62: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,984 INFO L290 TraceCheckUtils]: 63: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,985 INFO L290 TraceCheckUtils]: 64: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,987 INFO L290 TraceCheckUtils]: 65: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post8 < 50);havoc #t~post8; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:35,987 INFO L272 TraceCheckUtils]: 66: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:35,987 INFO L290 TraceCheckUtils]: 67: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:35,988 INFO L290 TraceCheckUtils]: 68: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:35,988 INFO L290 TraceCheckUtils]: 69: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:35,989 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #98#return; {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:35,989 INFO L272 TraceCheckUtils]: 71: Hoare triple {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:35,990 INFO L290 TraceCheckUtils]: 72: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:35,990 INFO L290 TraceCheckUtils]: 73: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:35,990 INFO L290 TraceCheckUtils]: 74: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:35,991 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #100#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:35,992 INFO L272 TraceCheckUtils]: 76: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:35,992 INFO L290 TraceCheckUtils]: 77: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:35,992 INFO L290 TraceCheckUtils]: 78: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:35,992 INFO L290 TraceCheckUtils]: 79: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:35,993 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #102#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:35,993 INFO L272 TraceCheckUtils]: 81: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:35,993 INFO L290 TraceCheckUtils]: 82: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:35,993 INFO L290 TraceCheckUtils]: 83: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:35,993 INFO L290 TraceCheckUtils]: 84: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:35,994 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #104#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:35,996 INFO L290 TraceCheckUtils]: 86: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:35,998 INFO L290 TraceCheckUtils]: 87: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:36,000 INFO L290 TraceCheckUtils]: 88: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:36,002 INFO L290 TraceCheckUtils]: 89: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:36,004 INFO L290 TraceCheckUtils]: 90: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:36,013 INFO L290 TraceCheckUtils]: 91: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,015 INFO L290 TraceCheckUtils]: 92: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,017 INFO L290 TraceCheckUtils]: 93: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,018 INFO L290 TraceCheckUtils]: 94: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,019 INFO L290 TraceCheckUtils]: 95: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,021 INFO L290 TraceCheckUtils]: 96: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,022 INFO L290 TraceCheckUtils]: 97: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,023 INFO L290 TraceCheckUtils]: 98: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,025 INFO L290 TraceCheckUtils]: 99: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:36,025 INFO L272 TraceCheckUtils]: 100: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:36,025 INFO L290 TraceCheckUtils]: 101: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:36,025 INFO L290 TraceCheckUtils]: 102: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:36,026 INFO L290 TraceCheckUtils]: 103: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:36,031 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #98#return; {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 06:03:36,032 INFO L272 TraceCheckUtils]: 105: Hoare triple {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:36,032 INFO L290 TraceCheckUtils]: 106: Hoare triple {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:36,033 INFO L290 TraceCheckUtils]: 107: Hoare triple {210678#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210338#false} is VALID [2022-04-28 06:03:36,033 INFO L290 TraceCheckUtils]: 108: Hoare triple {210338#false} assume !false; {210338#false} is VALID [2022-04-28 06:03:36,034 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 47 proven. 113 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 06:03:36,034 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:04:11,956 INFO L290 TraceCheckUtils]: 108: Hoare triple {210338#false} assume !false; {210338#false} is VALID [2022-04-28 06:04:11,957 INFO L290 TraceCheckUtils]: 107: Hoare triple {210678#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210338#false} is VALID [2022-04-28 06:04:11,958 INFO L290 TraceCheckUtils]: 106: Hoare triple {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:11,958 INFO L272 TraceCheckUtils]: 105: Hoare triple {210694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:04:11,959 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {210694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:04:11,960 INFO L290 TraceCheckUtils]: 103: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:11,960 INFO L290 TraceCheckUtils]: 102: Hoare triple {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:11,961 INFO L290 TraceCheckUtils]: 101: Hoare triple {210337#true} ~cond := #in~cond; {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:04:11,961 INFO L272 TraceCheckUtils]: 100: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:11,961 INFO L290 TraceCheckUtils]: 99: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,962 INFO L290 TraceCheckUtils]: 98: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,962 INFO L290 TraceCheckUtils]: 97: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,963 INFO L290 TraceCheckUtils]: 96: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 50);havoc #t~post7; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,963 INFO L290 TraceCheckUtils]: 95: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,964 INFO L290 TraceCheckUtils]: 94: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,964 INFO L290 TraceCheckUtils]: 93: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:11,965 INFO L290 TraceCheckUtils]: 92: Hoare triple {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:12,056 INFO L290 TraceCheckUtils]: 91: Hoare triple {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 06:04:12,057 INFO L290 TraceCheckUtils]: 90: Hoare triple {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,057 INFO L290 TraceCheckUtils]: 89: Hoare triple {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post7 < 50);havoc #t~post7; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,058 INFO L290 TraceCheckUtils]: 88: Hoare triple {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,065 INFO L290 TraceCheckUtils]: 87: Hoare triple {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,065 INFO L290 TraceCheckUtils]: 86: Hoare triple {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,066 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210337#true} {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,067 INFO L290 TraceCheckUtils]: 84: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,067 INFO L290 TraceCheckUtils]: 83: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,067 INFO L290 TraceCheckUtils]: 82: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,067 INFO L272 TraceCheckUtils]: 81: Hoare triple {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,068 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210337#true} {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,068 INFO L290 TraceCheckUtils]: 79: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,068 INFO L290 TraceCheckUtils]: 78: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,068 INFO L290 TraceCheckUtils]: 77: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,068 INFO L272 TraceCheckUtils]: 76: Hoare triple {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,069 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210337#true} {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #100#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,069 INFO L290 TraceCheckUtils]: 74: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,069 INFO L290 TraceCheckUtils]: 73: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,069 INFO L290 TraceCheckUtils]: 72: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,069 INFO L272 TraceCheckUtils]: 71: Hoare triple {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,071 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #98#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,071 INFO L290 TraceCheckUtils]: 69: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:12,071 INFO L290 TraceCheckUtils]: 68: Hoare triple {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:12,072 INFO L290 TraceCheckUtils]: 67: Hoare triple {210337#true} ~cond := #in~cond; {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:04:12,072 INFO L272 TraceCheckUtils]: 66: Hoare triple {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,072 INFO L290 TraceCheckUtils]: 65: Hoare triple {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,073 INFO L290 TraceCheckUtils]: 64: Hoare triple {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,074 INFO L290 TraceCheckUtils]: 63: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210804#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,075 INFO L290 TraceCheckUtils]: 62: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post7 < 50);havoc #t~post7; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,075 INFO L290 TraceCheckUtils]: 61: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 60: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 59: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 58: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 57: Hoare triple {210337#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 56: Hoare triple {210337#true} assume !(~c~0 >= ~b~0); {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 55: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 54: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 53: Hoare triple {210337#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 52: Hoare triple {210337#true} assume !(~c~0 >= 2 * ~v~0); {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210337#true} {210337#true} #104#return; {210337#true} is VALID [2022-04-28 06:04:12,079 INFO L290 TraceCheckUtils]: 50: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 49: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 48: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L272 TraceCheckUtils]: 47: Hoare triple {210337#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210337#true} {210337#true} #102#return; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 45: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 44: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 43: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L272 TraceCheckUtils]: 42: Hoare triple {210337#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210337#true} {210337#true} #100#return; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 40: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 39: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L290 TraceCheckUtils]: 38: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,080 INFO L272 TraceCheckUtils]: 37: Hoare triple {210337#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210337#true} {210337#true} #98#return; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 35: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 34: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 33: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L272 TraceCheckUtils]: 32: Hoare triple {210337#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 31: Hoare triple {210337#true} assume !!(#t~post8 < 50);havoc #t~post8; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 30: Hoare triple {210337#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 29: Hoare triple {210337#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 28: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 27: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 26: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 25: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 24: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,081 INFO L290 TraceCheckUtils]: 23: Hoare triple {210337#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 22: Hoare triple {210337#true} assume !(~c~0 >= ~b~0); {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 21: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 17: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {210337#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210337#true} {210337#true} #96#return; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L272 TraceCheckUtils]: 11: Hoare triple {210337#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210337#true} {210337#true} #94#return; {210337#true} is VALID [2022-04-28 06:04:12,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L272 TraceCheckUtils]: 6: Hoare triple {210337#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L290 TraceCheckUtils]: 5: Hoare triple {210337#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L272 TraceCheckUtils]: 4: Hoare triple {210337#true} call #t~ret9 := main(); {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210337#true} {210337#true} #108#return; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L290 TraceCheckUtils]: 2: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L290 TraceCheckUtils]: 1: Hoare triple {210337#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(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {210337#true} is VALID [2022-04-28 06:04:12,083 INFO L272 TraceCheckUtils]: 0: Hoare triple {210337#true} call ULTIMATE.init(); {210337#true} is VALID [2022-04-28 06:04:12,084 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 102 proven. 21 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2022-04-28 06:04:12,084 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:04:12,084 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [964066845] [2022-04-28 06:04:12,084 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:04:12,084 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1167570460] [2022-04-28 06:04:12,084 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1167570460] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:04:12,084 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:04:12,084 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-28 06:04:12,085 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:04:12,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [984853343] [2022-04-28 06:04:12,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [984853343] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:04:12,085 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:04:12,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 06:04:12,085 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1964156022] [2022-04-28 06:04:12,085 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:04:12,085 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-28 06:04:12,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:04:12,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:04:14,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:14,679 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 06:04:14,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:14,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 06:04:14,679 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=656, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:04:14,679 INFO L87 Difference]: Start difference. First operand 2137 states and 2784 transitions. Second operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12)