/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 10:46:35,438 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 10:46:35,449 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 10:46:35,488 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 10:46:35,489 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 10:46:35,489 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 10:46:35,490 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 10:46:35,491 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 10:46:35,492 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 10:46:35,492 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 10:46:35,493 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 10:46:35,494 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 10:46:35,494 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 10:46:35,494 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 10:46:35,495 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 10:46:35,496 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 10:46:35,496 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 10:46:35,497 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 10:46:35,498 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 10:46:35,502 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 10:46:35,506 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 10:46:35,507 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 10:46:35,507 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 10:46:35,508 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 10:46:35,508 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 10:46:35,510 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 10:46:35,510 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 10:46:35,510 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 10:46:35,511 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 10:46:35,511 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 10:46:35,512 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 10:46:35,512 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 10:46:35,512 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 10:46:35,513 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 10:46:35,513 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 10:46:35,514 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 10:46:35,514 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 10:46:35,514 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 10:46:35,514 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 10:46:35,514 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 10:46:35,515 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 10:46:35,532 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 10:46:35,532 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-28 10:46:35,537 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 10:46:35,538 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 10:46:35,538 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 10:46:35,538 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 10:46:35,538 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 10:46:35,538 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 10:46:35,539 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 10:46:35,539 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 10:46:35,539 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 10:46:35,540 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 10:46:35,540 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 10:46:35,540 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 10:46:35,540 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-28 10:46:35,540 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 10:46:35,735 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 10:46:35,750 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 10:46:35,752 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 10:46:35,752 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 10:46:35,753 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 10:46:35,754 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-28 10:46:35,803 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d2b87cf8/e4d5b31f991b4e18af43765367b68284/FLAG19de68562 [2022-04-28 10:46:36,150 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 10:46:36,150 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-28 10:46:36,154 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d2b87cf8/e4d5b31f991b4e18af43765367b68284/FLAG19de68562 [2022-04-28 10:46:36,581 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d2b87cf8/e4d5b31f991b4e18af43765367b68284 [2022-04-28 10:46:36,583 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 10:46:36,584 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 10:46:36,587 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 10:46:36,587 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 10:46:36,589 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 10:46:36,590 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,591 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@768fc412 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36, skipping insertion in model container [2022-04-28 10:46:36,591 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,596 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 10:46:36,607 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 10:46:36,744 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/egcd3-ll.c[490,503] [2022-04-28 10:46:36,773 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 10:46:36,780 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 10:46:36,793 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/egcd3-ll.c[490,503] [2022-04-28 10:46:36,805 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 10:46:36,818 INFO L208 MainTranslator]: Completed translation [2022-04-28 10:46:36,819 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36 WrapperNode [2022-04-28 10:46:36,819 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 10:46:36,820 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 10:46:36,820 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 10:46:36,820 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 10:46:36,829 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,829 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,835 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,835 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,851 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,855 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,856 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,857 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 10:46:36,858 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 10:46:36,858 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 10:46:36,858 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 10:46:36,858 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (1/1) ... [2022-04-28 10:46:36,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 10:46:36,872 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:36,909 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 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 10:46:36,956 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 10:46:36,956 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 10:46:36,956 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 10:46:36,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 10:46:36,958 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 10:46:36,958 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 10:46:36,958 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 10:46:36,945 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 10:46:37,009 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 10:46:37,010 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 10:46:37,180 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 10:46:37,184 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 10:46:37,185 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 10:46:37,186 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 10:46:37 BoogieIcfgContainer [2022-04-28 10:46:37,186 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 10:46:37,187 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 10:46:37,187 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 10:46:37,193 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 10:46:37,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 10:46:36" (1/3) ... [2022-04-28 10:46:37,194 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@59425f62 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 10:46:37, skipping insertion in model container [2022-04-28 10:46:37,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 10:46:36" (2/3) ... [2022-04-28 10:46:37,195 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@59425f62 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 10:46:37, skipping insertion in model container [2022-04-28 10:46:37,195 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 10:46:37" (3/3) ... [2022-04-28 10:46:37,196 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll.c [2022-04-28 10:46:37,208 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 10:46:37,208 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 10:46:37,250 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 10:46:37,265 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@32cacbbf, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1f3a4b5a [2022-04-28 10:46:37,266 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 10:46:37,273 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 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 10:46:37,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 10:46:37,278 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:37,279 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 10:46:37,279 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:37,283 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:37,284 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 1 times [2022-04-28 10:46:37,289 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:37,289 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [450487889] [2022-04-28 10:46:37,298 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:37,298 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 2 times [2022-04-28 10:46:37,301 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:37,302 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [52509312] [2022-04-28 10:46:37,302 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:37,302 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:37,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:37,451 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 10:46:37,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:37,467 INFO L290 TraceCheckUtils]: 0: Hoare triple {53#(and (= |#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); {40#true} is VALID [2022-04-28 10:46:37,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 10:46:37,467 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-28 10:46:37,468 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 10:46:37,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:37,479 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 10:46:37,479 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 10:46:37,480 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 10:46:37,480 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-28 10:46:37,480 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 10:46:37,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:37,487 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 10:46:37,488 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 10:46:37,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 10:46:37,488 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-28 10:46:37,489 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 10:46:37,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {53#(and (= |#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); {40#true} is VALID [2022-04-28 10:46:37,489 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 10:46:37,489 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-28 10:46:37,490 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-28 10:46:37,490 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#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; {40#true} is VALID [2022-04-28 10:46:37,490 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 10:46:37,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 10:46:37,491 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 10:46:37,491 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 10:46:37,491 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-28 10:46:37,491 INFO L272 TraceCheckUtils]: 11: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 10:46:37,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 10:46:37,492 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 10:46:37,492 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 10:46:37,492 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-28 10:46:37,492 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-28 10:46:37,492 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-28 10:46:37,492 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#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)); {41#false} is VALID [2022-04-28 10:46:37,492 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-28 10:46:37,493 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-28 10:46:37,493 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-28 10:46:37,493 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 10:46:37,493 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:46:37,494 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [52509312] [2022-04-28 10:46:37,494 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [52509312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:37,494 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:37,494 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 10:46:37,496 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:46:37,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [450487889] [2022-04-28 10:46:37,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [450487889] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:37,497 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:37,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 10:46:37,497 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [272642087] [2022-04-28 10:46:37,497 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:46:37,501 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 10:46:37,502 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:46:37,504 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 10:46:37,531 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 10:46:37,531 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 10:46:37,531 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:37,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 10:46:37,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 10:46:37,547 INFO L87 Difference]: Start difference. First operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 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 10:46:37,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:37,675 INFO L93 Difference]: Finished difference Result 67 states and 103 transitions. [2022-04-28 10:46:37,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 10:46:37,675 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 10:46:37,676 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:46:37,676 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 10:46:37,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-28 10:46:37,687 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 10:46:37,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-28 10:46:37,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 103 transitions. [2022-04-28 10:46:37,840 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:37,847 INFO L225 Difference]: With dead ends: 67 [2022-04-28 10:46:37,847 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 10:46:37,851 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 10:46:37,853 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 23 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 10:46:37,854 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 10:46:37,883 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 10:46:37,894 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 10:46:37,895 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:46:37,898 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 10:46:37,899 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 10:46:37,899 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 10:46:37,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:37,906 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-28 10:46:37,906 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 10:46:37,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:37,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:37,907 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 32 states. [2022-04-28 10:46:37,907 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 32 states. [2022-04-28 10:46:37,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:37,910 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-28 10:46:37,910 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 10:46:37,911 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:37,911 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:37,911 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:46:37,911 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:46:37,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 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 10:46:37,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2022-04-28 10:46:37,915 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 22 [2022-04-28 10:46:37,917 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:46:37,917 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2022-04-28 10:46:37,917 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 10:46:37,917 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 39 transitions. [2022-04-28 10:46:37,965 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 10:46:37,966 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 10:46:37,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 10:46:37,966 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:37,967 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 10:46:37,968 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 10:46:37,968 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:37,969 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:37,970 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 1 times [2022-04-28 10:46:37,970 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:37,970 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1465003594] [2022-04-28 10:46:37,970 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:37,970 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 2 times [2022-04-28 10:46:37,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:37,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [441789117] [2022-04-28 10:46:37,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:37,974 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:38,005 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:46:38,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [264033307] [2022-04-28 10:46:38,005 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:46:38,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:46:38,006 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:38,008 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 10:46:38,010 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 10:46:38,063 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 10:46:38,064 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:46:38,068 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 10:46:38,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:38,091 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:46:38,340 INFO L272 TraceCheckUtils]: 0: Hoare triple {318#true} call ULTIMATE.init(); {318#true} is VALID [2022-04-28 10:46:38,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {318#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); {318#true} is VALID [2022-04-28 10:46:38,340 INFO L290 TraceCheckUtils]: 2: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 10:46:38,340 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {318#true} {318#true} #105#return; {318#true} is VALID [2022-04-28 10:46:38,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {318#true} call #t~ret6 := main(); {318#true} is VALID [2022-04-28 10:46:38,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {318#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; {318#true} is VALID [2022-04-28 10:46:38,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {318#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-28 10:46:38,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-28 10:46:38,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-28 10:46:38,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 10:46:38,342 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {318#true} {318#true} #91#return; {318#true} is VALID [2022-04-28 10:46:38,342 INFO L272 TraceCheckUtils]: 11: Hoare triple {318#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-28 10:46:38,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-28 10:46:38,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-28 10:46:38,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 10:46:38,343 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {318#true} {318#true} #93#return; {318#true} is VALID [2022-04-28 10:46:38,343 INFO L290 TraceCheckUtils]: 16: Hoare triple {318#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {371#(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 10:46:38,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {371#(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 !false; {371#(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 10:46:38,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {371#(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); {378#(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 10:46:38,345 INFO L272 TraceCheckUtils]: 19: Hoare triple {378#(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)); {382#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:46:38,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {382#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {386#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:46:38,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {319#false} is VALID [2022-04-28 10:46:38,346 INFO L290 TraceCheckUtils]: 22: Hoare triple {319#false} assume !false; {319#false} is VALID [2022-04-28 10:46:38,347 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 10:46:38,347 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 10:46:38,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:46:38,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [441789117] [2022-04-28 10:46:38,347 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:46:38,348 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [264033307] [2022-04-28 10:46:38,348 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [264033307] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:38,348 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:38,348 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 10:46:38,349 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:46:38,349 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1465003594] [2022-04-28 10:46:38,349 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1465003594] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:38,349 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:38,349 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 10:46:38,349 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1882977630] [2022-04-28 10:46:38,350 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:46:38,350 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 23 [2022-04-28 10:46:38,350 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:46:38,351 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 10:46:38,364 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 10:46:38,364 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 10:46:38,364 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:38,364 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 10:46:38,365 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 10:46:38,365 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 10:46:38,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:38,688 INFO L93 Difference]: Finished difference Result 51 states and 64 transitions. [2022-04-28 10:46:38,689 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 10:46:38,689 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 23 [2022-04-28 10:46:38,689 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:46:38,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 10:46:38,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 10:46:38,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 10:46:38,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 10:46:38,702 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-28 10:46:38,750 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 10:46:38,752 INFO L225 Difference]: With dead ends: 51 [2022-04-28 10:46:38,752 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 10:46:38,753 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 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 10:46:38,754 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 14 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 10:46:38,754 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 154 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 10:46:38,755 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 10:46:38,766 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2022-04-28 10:46:38,767 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:46:38,767 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 10:46:38,768 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 10:46:38,768 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 10:46:38,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:38,771 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-28 10:46:38,771 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-28 10:46:38,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:38,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:38,772 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 48 states. [2022-04-28 10:46:38,772 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 48 states. [2022-04-28 10:46:38,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:38,775 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-28 10:46:38,775 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-28 10:46:38,776 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:38,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:38,776 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:46:38,776 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:46:38,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 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 10:46:38,778 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 59 transitions. [2022-04-28 10:46:38,779 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 59 transitions. Word has length 23 [2022-04-28 10:46:38,779 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:46:38,779 INFO L495 AbstractCegarLoop]: Abstraction has 47 states and 59 transitions. [2022-04-28 10:46:38,779 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 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 10:46:38,779 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 59 transitions. [2022-04-28 10:46:38,837 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:38,837 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 59 transitions. [2022-04-28 10:46:38,839 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 10:46:38,840 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:38,840 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] [2022-04-28 10:46:38,874 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 10:46:39,055 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 10:46:39,056 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:39,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:39,056 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 1 times [2022-04-28 10:46:39,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:39,056 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [901019233] [2022-04-28 10:46:39,057 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:39,057 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 2 times [2022-04-28 10:46:39,057 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:39,057 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1573101135] [2022-04-28 10:46:39,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:39,057 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:39,072 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:46:39,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [985053375] [2022-04-28 10:46:39,073 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:46:39,073 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:46:39,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:39,075 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 10:46:39,076 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 10:46:39,111 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:46:39,112 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:46:39,112 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 10:46:39,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:39,125 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:46:39,246 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-28 10:46:39,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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); {688#true} is VALID [2022-04-28 10:46:39,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 10:46:39,247 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-28 10:46:39,247 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-28 10:46:39,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#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; {688#true} is VALID [2022-04-28 10:46:39,248 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 10:46:39,249 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:46:39,249 INFO L290 TraceCheckUtils]: 8: Hoare triple {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:39,249 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:39,250 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:39,250 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 10:46:39,250 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-28 10:46:39,250 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-28 10:46:39,251 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 10:46:39,251 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:39,252 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 10:46:39,255 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 10:46:39,255 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,256 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,257 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 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; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:39,257 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:39,257 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-28 10:46:39,258 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#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)); {689#false} is VALID [2022-04-28 10:46:39,258 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-28 10:46:39,260 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-28 10:46:39,260 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-28 10:46:39,260 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 10:46:39,260 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:46:39,441 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-28 10:46:39,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-28 10:46:39,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-28 10:46:39,442 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#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)); {689#false} is VALID [2022-04-28 10:46:39,442 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-28 10:46:39,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:39,443 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 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; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:39,444 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,444 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,445 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 10:46:39,445 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 10:46:39,446 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 10:46:39,446 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:39,446 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 10:46:39,446 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-28 10:46:39,447 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-28 10:46:39,447 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 10:46:39,447 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:39,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:39,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:39,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 10:46:39,450 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 10:46:39,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#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; {688#true} is VALID [2022-04-28 10:46:39,450 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-28 10:46:39,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-28 10:46:39,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 10:46:39,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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); {688#true} is VALID [2022-04-28 10:46:39,451 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-28 10:46:39,451 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 10:46:39,451 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:46:39,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1573101135] [2022-04-28 10:46:39,451 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:46:39,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [985053375] [2022-04-28 10:46:39,452 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [985053375] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:46:39,452 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:46:39,452 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 10:46:39,452 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:46:39,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [901019233] [2022-04-28 10:46:39,452 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [901019233] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:39,452 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:39,452 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 10:46:39,452 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1982508351] [2022-04-28 10:46:39,452 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:46:39,453 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 28 [2022-04-28 10:46:39,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:46:39,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 10:46:39,470 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:39,470 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 10:46:39,470 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:39,470 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 10:46:39,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 10:46:39,471 INFO L87 Difference]: Start difference. First operand 47 states and 59 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 10:46:40,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:40,013 INFO L93 Difference]: Finished difference Result 100 states and 138 transitions. [2022-04-28 10:46:40,013 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 10:46:40,013 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 28 [2022-04-28 10:46:40,014 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:46:40,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 10:46:40,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-28 10:46:40,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 10:46:40,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-28 10:46:40,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 103 transitions. [2022-04-28 10:46:40,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:40,128 INFO L225 Difference]: With dead ends: 100 [2022-04-28 10:46:40,128 INFO L226 Difference]: Without dead ends: 93 [2022-04-28 10:46:40,128 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 10:46:40,129 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 71 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 10:46:40,129 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 216 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 10:46:40,130 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-28 10:46:40,188 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 68. [2022-04-28 10:46:40,189 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:46:40,189 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 10:46:40,189 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 10:46:40,190 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 10:46:40,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:40,194 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-28 10:46:40,194 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-28 10:46:40,195 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:40,195 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:40,195 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 93 states. [2022-04-28 10:46:40,195 INFO L87 Difference]: Start difference. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 93 states. [2022-04-28 10:46:40,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:40,199 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-28 10:46:40,200 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-28 10:46:40,200 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:40,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:40,200 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:46:40,200 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:46:40,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 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 10:46:40,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 90 transitions. [2022-04-28 10:46:40,203 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 90 transitions. Word has length 28 [2022-04-28 10:46:40,203 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:46:40,212 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 90 transitions. [2022-04-28 10:46:40,212 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 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 10:46:40,212 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 90 transitions. [2022-04-28 10:46:40,307 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:40,307 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 90 transitions. [2022-04-28 10:46:40,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 10:46:40,308 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:40,308 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 10:46:40,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 10:46:40,523 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 10:46:40,524 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:40,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:40,524 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 1 times [2022-04-28 10:46:40,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:40,524 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1280441093] [2022-04-28 10:46:40,525 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:40,525 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 2 times [2022-04-28 10:46:40,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:40,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1939014182] [2022-04-28 10:46:40,525 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:40,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:40,537 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:46:40,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1625303999] [2022-04-28 10:46:40,538 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:46:40,538 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:46:40,538 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:40,539 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 10:46:40,547 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 10:46:40,584 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:46:40,585 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:46:40,585 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-28 10:46:40,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:40,608 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:46:40,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-28 10:46:40,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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); {1396#true} is VALID [2022-04-28 10:46:40,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 10:46:40,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-28 10:46:40,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-28 10:46:40,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#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; {1396#true} is VALID [2022-04-28 10:46:40,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 10:46:40,867 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:46:40,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:40,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:40,869 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} {1396#true} #91#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:40,869 INFO L272 TraceCheckUtils]: 11: Hoare triple {1433#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 10:46:40,869 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 10:46:40,869 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 10:46:40,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 10:46:40,870 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1433#(<= 1 main_~x~0)} #93#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-28 10:46:40,870 INFO L290 TraceCheckUtils]: 16: Hoare triple {1433#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1452#(and (<= 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 10:46:40,871 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(and (<= 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 !false; {1452#(and (<= 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 10:46:40,871 INFO L290 TraceCheckUtils]: 18: Hoare triple {1452#(and (<= 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; {1459#(and (<= 1 main_~x~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 10:46:40,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1459#(and (<= 1 main_~x~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 10:46:40,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {1459#(and (<= 1 main_~x~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); {1459#(and (<= 1 main_~x~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 10:46:40,873 INFO L290 TraceCheckUtils]: 21: Hoare triple {1459#(and (<= 1 main_~x~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; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,873 INFO L290 TraceCheckUtils]: 22: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,874 INFO L290 TraceCheckUtils]: 23: Hoare triple {1469#(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; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,874 INFO L290 TraceCheckUtils]: 24: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,875 INFO L290 TraceCheckUtils]: 25: Hoare triple {1469#(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; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,875 INFO L290 TraceCheckUtils]: 26: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 10:46:40,876 INFO L272 TraceCheckUtils]: 27: Hoare triple {1469#(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)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:46:40,876 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:46:40,876 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-28 10:46:40,877 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-28 10:46:40,877 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 10:46:40,877 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:46:41,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-28 10:46:41,074 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-28 10:46:41,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:46:41,075 INFO L272 TraceCheckUtils]: 27: Hoare triple {1508#(= 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)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:46:41,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {1508#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,076 INFO L290 TraceCheckUtils]: 24: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,076 INFO L290 TraceCheckUtils]: 23: Hoare triple {1508#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,077 INFO L290 TraceCheckUtils]: 21: Hoare triple {1527#(= 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; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:46:41,077 INFO L290 TraceCheckUtils]: 20: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:46:41,078 INFO L290 TraceCheckUtils]: 19: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:46:41,078 INFO L290 TraceCheckUtils]: 18: Hoare triple {1527#(= 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; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:46:41,078 INFO L290 TraceCheckUtils]: 17: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:46:41,079 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:46:41,079 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1396#true} #93#return; {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L272 TraceCheckUtils]: 11: Hoare triple {1396#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1396#true} {1396#true} #91#return; {1396#true} is VALID [2022-04-28 10:46:41,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#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; {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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); {1396#true} is VALID [2022-04-28 10:46:41,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-28 10:46:41,081 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 10:46:41,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:46:41,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1939014182] [2022-04-28 10:46:41,081 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:46:41,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1625303999] [2022-04-28 10:46:41,081 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1625303999] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:46:41,081 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:46:41,081 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-28 10:46:41,082 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:46:41,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1280441093] [2022-04-28 10:46:41,082 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1280441093] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:41,082 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:41,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 10:46:41,082 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [593138158] [2022-04-28 10:46:41,082 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:46:41,082 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,083 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:46:41,083 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,103 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 10:46:41,103 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 10:46:41,103 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:41,104 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 10:46:41,104 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 10:46:41,104 INFO L87 Difference]: Start difference. First operand 68 states and 90 transitions. Second operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:41,794 INFO L93 Difference]: Finished difference Result 115 states and 154 transitions. [2022-04-28 10:46:41,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 10:46:41,794 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,795 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:46:41,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-28 10:46:41,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:41,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-28 10:46:41,803 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 98 transitions. [2022-04-28 10:46:41,877 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:41,882 INFO L225 Difference]: With dead ends: 115 [2022-04-28 10:46:41,882 INFO L226 Difference]: Without dead ends: 113 [2022-04-28 10:46:41,882 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-28 10:46:41,884 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 234 SdHoareTripleChecker+Invalid, 231 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 10:46:41,884 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 234 Invalid, 231 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 10:46:41,886 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-28 10:46:42,011 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 102. [2022-04-28 10:46:42,011 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:46:42,012 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:46:42,012 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:46:42,012 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:46:42,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:42,017 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-28 10:46:42,017 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-28 10:46:42,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:42,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:42,018 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-28 10:46:42,018 INFO L87 Difference]: Start difference. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-28 10:46:42,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:42,022 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-28 10:46:42,022 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-28 10:46:42,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:42,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:42,022 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:46:42,022 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:46:42,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:46:42,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 136 transitions. [2022-04-28 10:46:42,026 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 136 transitions. Word has length 31 [2022-04-28 10:46:42,026 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:46:42,026 INFO L495 AbstractCegarLoop]: Abstraction has 102 states and 136 transitions. [2022-04-28 10:46:42,026 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 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 10:46:42,026 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 102 states and 136 transitions. [2022-04-28 10:46:42,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:42,153 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 136 transitions. [2022-04-28 10:46:42,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 10:46:42,154 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:42,154 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] [2022-04-28 10:46:42,170 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 10:46:42,362 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 10:46:42,363 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:42,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:42,363 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 1 times [2022-04-28 10:46:42,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:42,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [572130182] [2022-04-28 10:46:42,363 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:42,363 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 2 times [2022-04-28 10:46:42,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:42,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1705384852] [2022-04-28 10:46:42,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:42,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:42,384 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:46:42,385 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1236988989] [2022-04-28 10:46:42,385 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:46:42,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:46:42,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:42,386 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 10:46:42,387 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 10:46:42,419 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:46:42,419 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:46:42,420 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 10:46:42,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:42,434 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:46:42,624 INFO L272 TraceCheckUtils]: 0: Hoare triple {2259#true} call ULTIMATE.init(); {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {2259#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); {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L290 TraceCheckUtils]: 2: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2259#true} {2259#true} #105#return; {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L272 TraceCheckUtils]: 4: Hoare triple {2259#true} call #t~ret6 := main(); {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {2259#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; {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L272 TraceCheckUtils]: 6: Hoare triple {2259#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-28 10:46:42,625 INFO L290 TraceCheckUtils]: 7: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 10:46:42,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 10:46:42,626 INFO L290 TraceCheckUtils]: 9: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 10:46:42,626 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2259#true} {2259#true} #91#return; {2259#true} is VALID [2022-04-28 10:46:42,626 INFO L272 TraceCheckUtils]: 11: Hoare triple {2259#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-28 10:46:42,626 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#true} ~cond := #in~cond; {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:46:42,627 INFO L290 TraceCheckUtils]: 13: Hoare triple {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:42,627 INFO L290 TraceCheckUtils]: 14: Hoare triple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:42,627 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} {2259#true} #93#return; {2311#(<= 1 main_~y~0)} is VALID [2022-04-28 10:46:42,628 INFO L290 TraceCheckUtils]: 16: Hoare triple {2311#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2315#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:42,628 INFO L290 TraceCheckUtils]: 17: Hoare triple {2315#(<= 1 main_~b~0)} assume !false; {2315#(<= 1 main_~b~0)} is VALID [2022-04-28 10:46:42,628 INFO L290 TraceCheckUtils]: 18: Hoare triple {2315#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,629 INFO L290 TraceCheckUtils]: 19: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {2322#(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; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,629 INFO L290 TraceCheckUtils]: 21: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,630 INFO L272 TraceCheckUtils]: 22: Hoare triple {2322#(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)); {2259#true} is VALID [2022-04-28 10:46:42,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 10:46:42,630 INFO L290 TraceCheckUtils]: 24: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 10:46:42,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 10:46:42,633 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,634 INFO L272 TraceCheckUtils]: 27: Hoare triple {2322#(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)); {2259#true} is VALID [2022-04-28 10:46:42,634 INFO L290 TraceCheckUtils]: 28: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 10:46:42,634 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 10:46:42,634 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 10:46:42,635 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:46:42,635 INFO L272 TraceCheckUtils]: 32: Hoare triple {2322#(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)); {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:46:42,636 INFO L290 TraceCheckUtils]: 33: Hoare triple {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2369#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:46:42,636 INFO L290 TraceCheckUtils]: 34: Hoare triple {2369#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2260#false} is VALID [2022-04-28 10:46:42,636 INFO L290 TraceCheckUtils]: 35: Hoare triple {2260#false} assume !false; {2260#false} is VALID [2022-04-28 10:46:42,636 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 10:46:42,636 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 10:46:42,636 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:46:42,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1705384852] [2022-04-28 10:46:42,637 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:46:42,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1236988989] [2022-04-28 10:46:42,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1236988989] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:42,637 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:42,637 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 10:46:42,637 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:46:42,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [572130182] [2022-04-28 10:46:42,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [572130182] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:46:42,637 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:46:42,637 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 10:46:42,637 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1278600830] [2022-04-28 10:46:42,637 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:46:42,638 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 36 [2022-04-28 10:46:42,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:46:42,638 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 10:46:42,656 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 10:46:42,656 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 10:46:42,656 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:42,657 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 10:46:42,657 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 10:46:42,657 INFO L87 Difference]: Start difference. First operand 102 states and 136 transitions. Second operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 10:46:43,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:43,175 INFO L93 Difference]: Finished difference Result 115 states and 153 transitions. [2022-04-28 10:46:43,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 10:46:43,175 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 36 [2022-04-28 10:46:43,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:46:43,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 10:46:43,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-28 10:46:43,177 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 10:46:43,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-28 10:46:43,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 78 transitions. [2022-04-28 10:46:43,230 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 10:46:43,232 INFO L225 Difference]: With dead ends: 115 [2022-04-28 10:46:43,232 INFO L226 Difference]: Without dead ends: 113 [2022-04-28 10:46:43,232 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 10:46:43,233 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 41 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 10:46:43,233 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [45 Valid, 209 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 10:46:43,233 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-28 10:46:43,389 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 112. [2022-04-28 10:46:43,389 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:46:43,389 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:46:43,390 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:46:43,390 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:46:43,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:43,394 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-28 10:46:43,394 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-28 10:46:43,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:43,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:43,395 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-28 10:46:43,395 INFO L87 Difference]: Start difference. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-28 10:46:43,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:46:43,399 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-28 10:46:43,399 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-28 10:46:43,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:46:43,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:46:43,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:46:43,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:46:43,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:46:43,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 150 transitions. [2022-04-28 10:46:43,404 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 150 transitions. Word has length 36 [2022-04-28 10:46:43,404 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:46:43,404 INFO L495 AbstractCegarLoop]: Abstraction has 112 states and 150 transitions. [2022-04-28 10:46:43,405 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 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 10:46:43,405 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 150 transitions. [2022-04-28 10:46:43,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:46:43,546 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 150 transitions. [2022-04-28 10:46:43,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 10:46:43,562 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:46:43,562 INFO L195 NwaCegarLoop]: trace histogram [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 10:46:43,589 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 10:46:43,762 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 10:46:43,762 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:46:43,763 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:46:43,763 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 1 times [2022-04-28 10:46:43,763 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:46:43,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [127675629] [2022-04-28 10:46:43,763 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:46:43,764 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 2 times [2022-04-28 10:46:43,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:46:43,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1061485856] [2022-04-28 10:46:43,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:46:43,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:46:43,774 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:46:43,774 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [216405135] [2022-04-28 10:46:43,774 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:46:43,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:46:43,774 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:46:43,777 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 10:46:43,779 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 10:46:43,812 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:46:43,812 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:46:43,813 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 10:46:43,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:46:43,823 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:46:48,461 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-28 10:46:48,461 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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); {3063#true} is VALID [2022-04-28 10:46:48,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:46:48,461 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-28 10:46:48,461 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-28 10:46:48,461 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#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; {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 10:46:48,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:46:48,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:48,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:46:48,463 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} {3063#true} #93#return; {3115#(<= 1 main_~y~0)} is VALID [2022-04-28 10:46:48,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {3115#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:46:48,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:46:48,465 INFO L290 TraceCheckUtils]: 18: Hoare triple {3119#(and (= main_~r~0 0) (= 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; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:46:48,465 INFO L290 TraceCheckUtils]: 19: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:46:48,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:46:48,466 INFO L290 TraceCheckUtils]: 21: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,466 INFO L290 TraceCheckUtils]: 22: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,467 INFO L290 TraceCheckUtils]: 23: Hoare triple {3136#(and (= main_~s~0 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; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,467 INFO L290 TraceCheckUtils]: 24: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,468 INFO L290 TraceCheckUtils]: 25: Hoare triple {3136#(and (= main_~s~0 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; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,468 INFO L290 TraceCheckUtils]: 26: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,468 INFO L272 TraceCheckUtils]: 27: Hoare triple {3136#(and (= main_~s~0 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)); {3063#true} is VALID [2022-04-28 10:46:48,468 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 10:46:48,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 10:46:48,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:46:48,469 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:46:48,470 INFO L272 TraceCheckUtils]: 32: Hoare triple {3136#(and (= main_~s~0 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)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:46:48,470 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:46:48,470 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-28 10:46:48,470 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-28 10:46:48,471 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 10:46:48,471 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:48:13,983 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-28 10:48:13,983 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-28 10:48:13,984 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:13,985 INFO L272 TraceCheckUtils]: 32: Hoare triple {3190#(= 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)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:13,986 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:13,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:48:13,986 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 10:48:13,986 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 10:48:13,987 INFO L272 TraceCheckUtils]: 27: Hoare triple {3190#(= 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)); {3063#true} is VALID [2022-04-28 10:48:13,989 INFO L290 TraceCheckUtils]: 26: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:13,990 INFO L290 TraceCheckUtils]: 25: Hoare triple {3190#(= 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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:13,990 INFO L290 TraceCheckUtils]: 24: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:13,990 INFO L290 TraceCheckUtils]: 23: Hoare triple {3190#(= 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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:13,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:14,080 INFO L290 TraceCheckUtils]: 21: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:48:14,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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); {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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 10:48:14,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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 !false; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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 10:48:14,083 INFO L290 TraceCheckUtils]: 18: Hoare triple {3234#(= 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; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* 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 10:48:14,083 INFO L290 TraceCheckUtils]: 17: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:48:14,083 INFO L290 TraceCheckUtils]: 16: Hoare triple {3063#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:48:14,083 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3063#true} {3063#true} #93#return; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 13: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#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; {3063#true} is VALID [2022-04-28 10:48:14,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-28 10:48:14,085 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-28 10:48:14,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 10:48:14,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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); {3063#true} is VALID [2022-04-28 10:48:14,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-28 10:48:14,085 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 10:48:14,085 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:14,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1061485856] [2022-04-28 10:48:14,085 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:14,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [216405135] [2022-04-28 10:48:14,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [216405135] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:48:14,086 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:48:14,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-28 10:48:14,086 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:14,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [127675629] [2022-04-28 10:48:14,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [127675629] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:14,086 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:14,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 10:48:14,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [354419499] [2022-04-28 10:48:14,086 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:14,086 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-28 10:48:14,087 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:14,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 10:48:14,115 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 10:48:14,115 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 10:48:14,115 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:14,115 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 10:48:14,115 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=127, Unknown=0, NotChecked=0, Total=156 [2022-04-28 10:48:14,116 INFO L87 Difference]: Start difference. First operand 112 states and 150 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 10:48:14,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:14,892 INFO L93 Difference]: Finished difference Result 121 states and 158 transitions. [2022-04-28 10:48:14,892 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 10:48:14,892 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-28 10:48:14,892 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:14,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 10:48:14,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 10:48:14,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 10:48:14,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 10:48:14,895 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-28 10:48:15,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:15,006 INFO L225 Difference]: With dead ends: 121 [2022-04-28 10:48:15,006 INFO L226 Difference]: Without dead ends: 119 [2022-04-28 10:48:15,006 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=196, Unknown=0, NotChecked=0, Total=240 [2022-04-28 10:48:15,007 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 51 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 247 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 265 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 247 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 10:48:15,007 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 230 Invalid, 265 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 247 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 10:48:15,008 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-28 10:48:15,193 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2022-04-28 10:48:15,193 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:48:15,194 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:48:15,194 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:48:15,194 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:48:15,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:15,198 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-28 10:48:15,198 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-28 10:48:15,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:15,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:15,199 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-28 10:48:15,199 INFO L87 Difference]: Start difference. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-28 10:48:15,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:15,202 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-28 10:48:15,202 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-28 10:48:15,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:15,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:15,203 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:48:15,203 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:48:15,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 10:48:15,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 153 transitions. [2022-04-28 10:48:15,206 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 153 transitions. Word has length 36 [2022-04-28 10:48:15,206 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:48:15,206 INFO L495 AbstractCegarLoop]: Abstraction has 116 states and 153 transitions. [2022-04-28 10:48:15,207 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 10:48:15,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 116 states and 153 transitions. [2022-04-28 10:48:15,361 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 10:48:15,361 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 153 transitions. [2022-04-28 10:48:15,362 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 10:48:15,362 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:48:15,362 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 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 10:48:15,378 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-28 10:48:15,578 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 10:48:15,578 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:48:15,579 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:48:15,579 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 3 times [2022-04-28 10:48:15,579 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:15,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1795175252] [2022-04-28 10:48:15,579 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:48:15,580 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 4 times [2022-04-28 10:48:15,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:48:15,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [370649645] [2022-04-28 10:48:15,580 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:48:15,580 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:48:15,601 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:48:15,601 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [423529318] [2022-04-28 10:48:15,601 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 10:48:15,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:48:15,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:48:15,605 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 10:48:15,606 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 10:48:15,641 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 10:48:15,641 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:48:15,642 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 10:48:15,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:48:15,657 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:48:15,746 INFO L272 TraceCheckUtils]: 0: Hoare triple {4009#true} call ULTIMATE.init(); {4009#true} is VALID [2022-04-28 10:48:15,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {4009#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); {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 2: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4009#true} {4009#true} #105#return; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L272 TraceCheckUtils]: 4: Hoare triple {4009#true} call #t~ret6 := main(); {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 5: Hoare triple {4009#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; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L272 TraceCheckUtils]: 6: Hoare triple {4009#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 8: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 9: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4009#true} {4009#true} #91#return; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L272 TraceCheckUtils]: 11: Hoare triple {4009#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 12: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-28 10:48:15,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4009#true} {4009#true} #93#return; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {4009#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {4009#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-28 10:48:15,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {4009#true} assume !(~c~0 >= ~b~0); {4074#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 10:48:15,749 INFO L290 TraceCheckUtils]: 21: Hoare triple {4074#(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; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:15,749 INFO L290 TraceCheckUtils]: 22: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !false; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:15,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 24: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !false; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 26: Hoare triple {4010#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; {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 27: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 28: Hoare triple {4010#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 29: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 30: Hoare triple {4010#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4010#false} is VALID [2022-04-28 10:48:15,750 INFO L290 TraceCheckUtils]: 31: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 10:48:15,751 INFO L272 TraceCheckUtils]: 32: Hoare triple {4010#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4010#false} is VALID [2022-04-28 10:48:15,751 INFO L290 TraceCheckUtils]: 33: Hoare triple {4010#false} ~cond := #in~cond; {4010#false} is VALID [2022-04-28 10:48:15,751 INFO L290 TraceCheckUtils]: 34: Hoare triple {4010#false} assume 0 == ~cond; {4010#false} is VALID [2022-04-28 10:48:15,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 10:48:15,751 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 10:48:15,751 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 10:48:15,751 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:15,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [370649645] [2022-04-28 10:48:15,751 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:15,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [423529318] [2022-04-28 10:48:15,751 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [423529318] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:15,752 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:15,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:48:15,752 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:15,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1795175252] [2022-04-28 10:48:15,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1795175252] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:15,752 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:15,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:48:15,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [413892244] [2022-04-28 10:48:15,752 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:15,752 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 36 [2022-04-28 10:48:15,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:15,753 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 10:48:15,772 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 10:48:15,772 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 10:48:15,773 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:15,773 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 10:48:15,773 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 10:48:15,773 INFO L87 Difference]: Start difference. First operand 116 states and 153 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 10:48:16,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:16,187 INFO L93 Difference]: Finished difference Result 165 states and 227 transitions. [2022-04-28 10:48:16,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 10:48:16,187 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 36 [2022-04-28 10:48:16,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:16,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 10:48:16,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-28 10:48:16,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 10:48:16,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-28 10:48:16,190 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 97 transitions. [2022-04-28 10:48:16,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:16,255 INFO L225 Difference]: With dead ends: 165 [2022-04-28 10:48:16,255 INFO L226 Difference]: Without dead ends: 127 [2022-04-28 10:48:16,255 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 33 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 10:48:16,256 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 18 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 10:48:16,256 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 135 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 10:48:16,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-28 10:48:16,414 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 101. [2022-04-28 10:48:16,415 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:48:16,415 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:48:16,415 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:48:16,415 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:48:16,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:16,419 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-28 10:48:16,419 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-28 10:48:16,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:16,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:16,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-28 10:48:16,420 INFO L87 Difference]: Start difference. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-28 10:48:16,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:16,423 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-28 10:48:16,423 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-28 10:48:16,423 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:16,423 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:16,423 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:48:16,423 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:48:16,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 10:48:16,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 128 transitions. [2022-04-28 10:48:16,426 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 128 transitions. Word has length 36 [2022-04-28 10:48:16,426 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:48:16,426 INFO L495 AbstractCegarLoop]: Abstraction has 101 states and 128 transitions. [2022-04-28 10:48:16,426 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 10:48:16,426 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 128 transitions. [2022-04-28 10:48:16,559 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:16,559 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-28 10:48:16,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 10:48:16,560 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:48:16,560 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] [2022-04-28 10:48:16,576 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 10:48:16,760 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 10:48:16,761 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:48:16,761 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:48:16,761 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 1 times [2022-04-28 10:48:16,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:16,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1911753272] [2022-04-28 10:48:16,763 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:48:16,763 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 2 times [2022-04-28 10:48:16,763 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:48:16,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [799976966] [2022-04-28 10:48:16,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:48:16,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:48:16,789 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:48:16,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [822422332] [2022-04-28 10:48:16,789 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:48:16,789 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:48:16,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:48:16,804 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 10:48:16,805 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 10:48:16,839 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:48:16,839 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:48:16,840 INFO L263 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 10:48:16,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:48:16,846 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:48:16,963 INFO L272 TraceCheckUtils]: 0: Hoare triple {4912#true} call ULTIMATE.init(); {4912#true} is VALID [2022-04-28 10:48:16,963 INFO L290 TraceCheckUtils]: 1: Hoare triple {4912#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); {4912#true} is VALID [2022-04-28 10:48:16,963 INFO L290 TraceCheckUtils]: 2: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,963 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4912#true} {4912#true} #105#return; {4912#true} is VALID [2022-04-28 10:48:16,963 INFO L272 TraceCheckUtils]: 4: Hoare triple {4912#true} call #t~ret6 := main(); {4912#true} is VALID [2022-04-28 10:48:16,963 INFO L290 TraceCheckUtils]: 5: Hoare triple {4912#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; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {4912#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 9: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4912#true} {4912#true} #91#return; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L272 TraceCheckUtils]: 11: Hoare triple {4912#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4912#true} {4912#true} #93#return; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 16: Hoare triple {4912#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4912#true} is VALID [2022-04-28 10:48:16,964 INFO L290 TraceCheckUtils]: 17: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-28 10:48:16,965 INFO L290 TraceCheckUtils]: 18: Hoare triple {4912#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4912#true} is VALID [2022-04-28 10:48:16,965 INFO L290 TraceCheckUtils]: 19: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-28 10:48:16,965 INFO L290 TraceCheckUtils]: 20: Hoare triple {4912#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 10:48:16,965 INFO L290 TraceCheckUtils]: 21: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 10:48:16,966 INFO L272 TraceCheckUtils]: 22: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-28 10:48:16,966 INFO L290 TraceCheckUtils]: 23: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 10:48:16,966 INFO L290 TraceCheckUtils]: 24: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 10:48:16,966 INFO L290 TraceCheckUtils]: 25: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,967 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #95#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 10:48:16,967 INFO L272 TraceCheckUtils]: 27: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-28 10:48:16,967 INFO L290 TraceCheckUtils]: 28: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 10:48:16,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 10:48:16,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,968 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #97#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 10:48:16,968 INFO L272 TraceCheckUtils]: 32: Hoare triple {4977#(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)); {4912#true} is VALID [2022-04-28 10:48:16,968 INFO L290 TraceCheckUtils]: 33: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 10:48:16,968 INFO L290 TraceCheckUtils]: 34: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 10:48:16,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 10:48:16,968 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #99#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 10:48:16,969 INFO L272 TraceCheckUtils]: 37: Hoare triple {4977#(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)); {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:16,969 INFO L290 TraceCheckUtils]: 38: Hoare triple {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5033#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:16,970 INFO L290 TraceCheckUtils]: 39: Hoare triple {5033#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4913#false} is VALID [2022-04-28 10:48:16,970 INFO L290 TraceCheckUtils]: 40: Hoare triple {4913#false} assume !false; {4913#false} is VALID [2022-04-28 10:48:16,970 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 10:48:16,970 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 10:48:16,970 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:16,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [799976966] [2022-04-28 10:48:16,970 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:16,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [822422332] [2022-04-28 10:48:16,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [822422332] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:16,971 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:16,971 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:48:16,971 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:16,971 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1911753272] [2022-04-28 10:48:16,971 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1911753272] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:16,971 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:16,971 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:48:16,971 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1242657561] [2022-04-28 10:48:16,971 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:16,971 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), 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 41 [2022-04-28 10:48:16,972 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:16,972 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), 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 10:48:16,995 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 10:48:16,995 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 10:48:16,995 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:16,995 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 10:48:16,996 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 10:48:16,996 INFO L87 Difference]: Start difference. First operand 101 states and 128 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 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 10:48:17,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:17,385 INFO L93 Difference]: Finished difference Result 151 states and 206 transitions. [2022-04-28 10:48:17,385 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 10:48:17,385 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), 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 41 [2022-04-28 10:48:17,385 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:17,385 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), 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 10:48:17,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 10:48:17,386 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), 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 10:48:17,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 10:48:17,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-28 10:48:17,441 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 10:48:17,443 INFO L225 Difference]: With dead ends: 151 [2022-04-28 10:48:17,443 INFO L226 Difference]: Without dead ends: 149 [2022-04-28 10:48:17,443 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 37 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 10:48:17,444 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 136 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 10:48:17,444 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 136 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 10:48:17,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-04-28 10:48:17,659 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 130. [2022-04-28 10:48:17,660 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:48:17,660 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 10:48:17,660 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 10:48:17,661 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 10:48:17,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:17,664 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-28 10:48:17,664 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-28 10:48:17,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:17,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:17,665 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-28 10:48:17,665 INFO L87 Difference]: Start difference. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-28 10:48:17,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:17,669 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-28 10:48:17,669 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-28 10:48:17,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:17,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:17,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:48:17,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:48:17,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 10:48:17,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 176 transitions. [2022-04-28 10:48:17,674 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 176 transitions. Word has length 41 [2022-04-28 10:48:17,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:48:17,674 INFO L495 AbstractCegarLoop]: Abstraction has 130 states and 176 transitions. [2022-04-28 10:48:17,674 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), 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 10:48:17,674 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 176 transitions. [2022-04-28 10:48:17,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:17,880 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 176 transitions. [2022-04-28 10:48:17,880 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 10:48:17,880 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:48:17,880 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-28 10:48:17,896 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 10:48:18,091 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 10:48:18,092 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:48:18,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:48:18,092 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 1 times [2022-04-28 10:48:18,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:18,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [538845621] [2022-04-28 10:48:18,092 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:48:18,092 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 2 times [2022-04-28 10:48:18,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:48:18,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1700299756] [2022-04-28 10:48:18,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:48:18,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:48:18,101 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:48:18,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1071323946] [2022-04-28 10:48:18,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:48:18,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:48:18,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:48:18,102 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 10:48:18,103 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 10:48:18,144 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:48:18,144 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:48:18,145 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 10:48:18,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:48:18,153 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:48:18,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-28 10:48:18,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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); {5901#true} is VALID [2022-04-28 10:48:18,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-28 10:48:18,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-28 10:48:18,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#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; {5901#true} is VALID [2022-04-28 10:48:18,372 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,373 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:48:18,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:48:18,373 INFO L290 TraceCheckUtils]: 9: Hoare triple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:48:18,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} {5901#true} #91#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-28 10:48:18,374 INFO L272 TraceCheckUtils]: 11: Hoare triple {5938#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,374 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,374 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,374 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,379 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5938#(<= 1 main_~x~0)} #93#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-28 10:48:18,379 INFO L290 TraceCheckUtils]: 16: Hoare triple {5938#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5957#(<= 1 main_~a~0)} is VALID [2022-04-28 10:48:18,379 INFO L290 TraceCheckUtils]: 17: Hoare triple {5957#(<= 1 main_~a~0)} assume !false; {5957#(<= 1 main_~a~0)} is VALID [2022-04-28 10:48:18,380 INFO L290 TraceCheckUtils]: 18: Hoare triple {5957#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 10:48:18,381 INFO L290 TraceCheckUtils]: 19: Hoare triple {5964#(<= 1 main_~c~0)} assume !false; {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 10:48:18,381 INFO L290 TraceCheckUtils]: 20: Hoare triple {5964#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 10:48:18,381 INFO L290 TraceCheckUtils]: 21: Hoare triple {5964#(<= 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; {5974#(<= 1 main_~b~0)} is VALID [2022-04-28 10:48:18,382 INFO L290 TraceCheckUtils]: 22: Hoare triple {5974#(<= 1 main_~b~0)} assume !false; {5974#(<= 1 main_~b~0)} is VALID [2022-04-28 10:48:18,382 INFO L290 TraceCheckUtils]: 23: Hoare triple {5974#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,382 INFO L290 TraceCheckUtils]: 24: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,383 INFO L290 TraceCheckUtils]: 25: Hoare triple {5981#(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; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,383 INFO L290 TraceCheckUtils]: 26: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,383 INFO L272 TraceCheckUtils]: 27: Hoare triple {5981#(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)); {5901#true} is VALID [2022-04-28 10:48:18,383 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,383 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,384 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,384 INFO L272 TraceCheckUtils]: 32: Hoare triple {5981#(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)); {5901#true} is VALID [2022-04-28 10:48:18,384 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,384 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,384 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,385 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 10:48:18,385 INFO L272 TraceCheckUtils]: 37: Hoare triple {5981#(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)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:18,386 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:18,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-28 10:48:18,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-28 10:48:18,386 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 10:48:18,386 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:48:18,569 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-28 10:48:18,569 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-28 10:48:18,569 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:18,570 INFO L272 TraceCheckUtils]: 37: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:18,571 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,571 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,571 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,571 INFO L272 TraceCheckUtils]: 32: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,571 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,572 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,572 INFO L272 TraceCheckUtils]: 27: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,572 INFO L290 TraceCheckUtils]: 26: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,572 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 24: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 23: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 22: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {5901#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; {5901#true} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {5901#true} assume !(~c~0 >= ~b~0); {5901#true} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 19: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 10:48:18,573 INFO L290 TraceCheckUtils]: 18: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 17: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 16: Hoare triple {5901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5901#true} #93#return; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L272 TraceCheckUtils]: 11: Hoare triple {5901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5901#true} {5901#true} #91#return; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 9: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 8: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#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; {5901#true} is VALID [2022-04-28 10:48:18,574 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-28 10:48:18,575 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-28 10:48:18,575 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 10:48:18,575 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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); {5901#true} is VALID [2022-04-28 10:48:18,575 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-28 10:48:18,575 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 10:48:18,575 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:18,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1700299756] [2022-04-28 10:48:18,575 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:18,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1071323946] [2022-04-28 10:48:18,575 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1071323946] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 10:48:18,575 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 10:48:18,575 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [11] total 12 [2022-04-28 10:48:18,576 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:18,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [538845621] [2022-04-28 10:48:18,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [538845621] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:18,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:18,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:48:18,576 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1414818813] [2022-04-28 10:48:18,576 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:18,576 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, (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 41 [2022-04-28 10:48:18,577 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:18,577 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, (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 10:48:18,598 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 10:48:18,598 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 10:48:18,598 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:18,599 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 10:48:18,599 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-04-28 10:48:18,599 INFO L87 Difference]: Start difference. First operand 130 states and 176 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, (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 10:48:19,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:19,069 INFO L93 Difference]: Finished difference Result 173 states and 245 transitions. [2022-04-28 10:48:19,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 10:48:19,070 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, (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 41 [2022-04-28 10:48:19,070 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:19,070 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, (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 10:48:19,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 10:48:19,071 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, (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 10:48:19,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 10:48:19,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-28 10:48:19,110 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 10:48:19,113 INFO L225 Difference]: With dead ends: 173 [2022-04-28 10:48:19,113 INFO L226 Difference]: Without dead ends: 171 [2022-04-28 10:48:19,114 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=129, Unknown=0, NotChecked=0, Total=156 [2022-04-28 10:48:19,114 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 8 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 10:48:19,114 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 121 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 10:48:19,115 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-04-28 10:48:19,397 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 167. [2022-04-28 10:48:19,397 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:48:19,398 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 10:48:19,398 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 10:48:19,399 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 10:48:19,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:19,404 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-28 10:48:19,404 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-28 10:48:19,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:19,405 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:19,405 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-28 10:48:19,405 INFO L87 Difference]: Start difference. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-28 10:48:19,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:19,410 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-28 10:48:19,410 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-28 10:48:19,412 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:19,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:19,413 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:48:19,413 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:48:19,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 10:48:19,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 239 transitions. [2022-04-28 10:48:19,420 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 239 transitions. Word has length 41 [2022-04-28 10:48:19,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:48:19,420 INFO L495 AbstractCegarLoop]: Abstraction has 167 states and 239 transitions. [2022-04-28 10:48:19,420 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, (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 10:48:19,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 167 states and 239 transitions. [2022-04-28 10:48:19,714 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 10:48:19,714 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 239 transitions. [2022-04-28 10:48:19,715 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-28 10:48:19,715 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:48:19,715 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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 10:48:19,741 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 10:48:19,931 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 10:48:19,932 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:48:19,932 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:48:19,932 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 1 times [2022-04-28 10:48:19,932 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:19,932 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1922064373] [2022-04-28 10:48:19,933 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:48:19,933 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 2 times [2022-04-28 10:48:19,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:48:19,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [903729679] [2022-04-28 10:48:19,933 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:48:19,933 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:48:19,943 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:48:19,943 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2052848851] [2022-04-28 10:48:19,943 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:48:19,943 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:48:19,944 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:48:19,944 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 10:48:19,945 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 10:48:19,981 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:48:19,982 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:48:19,983 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-28 10:48:19,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:48:19,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:48:20,622 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-28 10:48:20,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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); {7182#true} is VALID [2022-04-28 10:48:20,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:20,622 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-28 10:48:20,622 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-28 10:48:20,622 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#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; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:20,623 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-28 10:48:20,624 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7235#(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 10:48:20,624 INFO L290 TraceCheckUtils]: 17: Hoare triple {7235#(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 !false; {7235#(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 10:48:20,625 INFO L290 TraceCheckUtils]: 18: Hoare triple {7235#(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; {7242#(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 10:48:20,625 INFO L290 TraceCheckUtils]: 19: Hoare triple {7242#(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 !false; {7242#(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 10:48:20,625 INFO L290 TraceCheckUtils]: 20: Hoare triple {7242#(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; {7249#(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 10:48:20,626 INFO L290 TraceCheckUtils]: 21: Hoare triple {7249#(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 !false; {7249#(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 10:48:20,626 INFO L272 TraceCheckUtils]: 22: Hoare triple {7249#(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)); {7182#true} is VALID [2022-04-28 10:48:20,626 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:20,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:20,627 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:20,628 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7249#(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))} #95#return; {7270#(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 10:48:20,628 INFO L272 TraceCheckUtils]: 27: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-28 10:48:20,628 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:20,628 INFO L290 TraceCheckUtils]: 29: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:20,629 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:20,629 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7270#(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))} #97#return; {7270#(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 10:48:20,630 INFO L272 TraceCheckUtils]: 32: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-28 10:48:20,630 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:20,630 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:20,630 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:20,630 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7270#(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))} #99#return; {7270#(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 10:48:20,631 INFO L272 TraceCheckUtils]: 37: Hoare triple {7270#(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)); {7182#true} is VALID [2022-04-28 10:48:20,631 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:20,631 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:20,631 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:20,631 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7270#(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))} #101#return; {7270#(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 10:48:20,632 INFO L290 TraceCheckUtils]: 42: Hoare triple {7270#(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); {7270#(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 10:48:20,632 INFO L290 TraceCheckUtils]: 43: Hoare triple {7270#(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; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:48:20,633 INFO L290 TraceCheckUtils]: 44: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:48:20,633 INFO L290 TraceCheckUtils]: 45: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:48:20,634 INFO L290 TraceCheckUtils]: 46: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= 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; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 10:48:20,634 INFO L290 TraceCheckUtils]: 47: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 10:48:20,635 INFO L290 TraceCheckUtils]: 48: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-28 10:48:20,635 INFO L272 TraceCheckUtils]: 49: Hoare triple {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 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)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:20,636 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:20,636 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-28 10:48:20,636 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-28 10:48:20,636 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 10:48:20,637 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:48:54,165 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-28 10:48:54,166 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-28 10:48:54,166 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:48:54,167 INFO L272 TraceCheckUtils]: 49: Hoare triple {7363#(= (+ (* 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)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:48:54,167 INFO L290 TraceCheckUtils]: 48: Hoare triple {7367#(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); {7363#(= (+ (* 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 10:48:54,167 INFO L290 TraceCheckUtils]: 47: Hoare triple {7367#(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 !false; {7367#(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 10:48:54,231 INFO L290 TraceCheckUtils]: 46: Hoare triple {7374#(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; {7367#(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 10:48:54,231 INFO L290 TraceCheckUtils]: 45: Hoare triple {7374#(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); {7374#(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 10:48:54,232 INFO L290 TraceCheckUtils]: 44: Hoare triple {7374#(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 !false; {7374#(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 10:48:54,302 INFO L290 TraceCheckUtils]: 43: Hoare triple {7384#(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; {7374#(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 10:48:54,302 INFO L290 TraceCheckUtils]: 42: Hoare triple {7384#(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); {7384#(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 10:48:54,303 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7384#(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))))} #101#return; {7384#(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 10:48:54,303 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:54,303 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:54,303 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:54,303 INFO L272 TraceCheckUtils]: 37: Hoare triple {7384#(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)); {7182#true} is VALID [2022-04-28 10:48:54,304 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7384#(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))))} #99#return; {7384#(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 10:48:54,304 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:54,304 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:54,304 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:54,304 INFO L272 TraceCheckUtils]: 32: Hoare triple {7384#(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)); {7182#true} is VALID [2022-04-28 10:48:54,305 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7421#(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))))} #97#return; {7384#(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 10:48:54,306 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:54,306 INFO L290 TraceCheckUtils]: 29: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:54,306 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:48:54,306 INFO L272 TraceCheckUtils]: 27: Hoare triple {7421#(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)); {7182#true} is VALID [2022-04-28 10:48:54,307 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7438#(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)))) (= (+ 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))))} #95#return; {7421#(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 10:48:54,308 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:54,308 INFO L290 TraceCheckUtils]: 24: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:48:54,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:48:54,308 INFO L272 TraceCheckUtils]: 22: Hoare triple {7438#(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)))) (= (+ 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)); {7182#true} is VALID [2022-04-28 10:48:54,309 INFO L290 TraceCheckUtils]: 21: Hoare triple {7438#(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)))) (= (+ 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 !false; {7438#(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)))) (= (+ 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 10:48:54,310 INFO L290 TraceCheckUtils]: 20: Hoare triple {7457#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7438#(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)))) (= (+ 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 10:48:54,310 INFO L290 TraceCheckUtils]: 19: Hoare triple {7457#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {7457#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {7182#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7457#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {7182#true} assume !false; {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:54,311 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#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; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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); {7182#true} is VALID [2022-04-28 10:48:54,312 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-28 10:48:54,313 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 10:48:54,313 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:54,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [903729679] [2022-04-28 10:48:54,313 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:54,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2052848851] [2022-04-28 10:48:54,313 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2052848851] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:48:54,313 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:48:54,313 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 10:48:54,313 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:54,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1922064373] [2022-04-28 10:48:54,313 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1922064373] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:54,314 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:54,314 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 10:48:54,314 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1779323595] [2022-04-28 10:48:54,314 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:54,314 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 53 [2022-04-28 10:48:54,314 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:54,314 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 10:48:54,348 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:54,349 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 10:48:54,349 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:54,349 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 10:48:54,349 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-28 10:48:54,349 INFO L87 Difference]: Start difference. First operand 167 states and 239 transitions. Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 10:48:56,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:56,250 INFO L93 Difference]: Finished difference Result 230 states and 330 transitions. [2022-04-28 10:48:56,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 10:48:56,250 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 53 [2022-04-28 10:48:56,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:56,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 10:48:56,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 10:48:56,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 10:48:56,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 10:48:56,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-28 10:48:56,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:56,393 INFO L225 Difference]: With dead ends: 230 [2022-04-28 10:48:56,393 INFO L226 Difference]: Without dead ends: 227 [2022-04-28 10:48:56,393 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 85 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-28 10:48:56,394 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 49 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 595 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 10:48:56,394 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 245 Invalid, 595 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 10:48:56,394 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2022-04-28 10:48:56,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 224. [2022-04-28 10:48:56,808 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:48:56,808 INFO L82 GeneralOperation]: Start isEquivalent. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:48:56,808 INFO L74 IsIncluded]: Start isIncluded. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:48:56,809 INFO L87 Difference]: Start difference. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:48:56,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:56,814 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-28 10:48:56,814 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-28 10:48:56,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:56,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:56,815 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-28 10:48:56,816 INFO L87 Difference]: Start difference. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-28 10:48:56,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:56,821 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-28 10:48:56,821 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-28 10:48:56,822 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:48:56,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:48:56,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:48:56,822 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:48:56,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:48:56,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 323 transitions. [2022-04-28 10:48:56,828 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 323 transitions. Word has length 53 [2022-04-28 10:48:56,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:48:56,828 INFO L495 AbstractCegarLoop]: Abstraction has 224 states and 323 transitions. [2022-04-28 10:48:56,828 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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 10:48:56,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 323 transitions. [2022-04-28 10:48:57,244 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 323 edges. 323 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:57,244 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 323 transitions. [2022-04-28 10:48:57,245 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 10:48:57,245 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:48:57,245 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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] [2022-04-28 10:48:57,261 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 10:48:57,445 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 10:48:57,446 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:48:57,446 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:48:57,446 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 3 times [2022-04-28 10:48:57,446 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:57,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [77648190] [2022-04-28 10:48:57,447 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:48:57,447 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 4 times [2022-04-28 10:48:57,447 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:48:57,447 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [236378595] [2022-04-28 10:48:57,447 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:48:57,447 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:48:57,456 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:48:57,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1653923850] [2022-04-28 10:48:57,456 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 10:48:57,456 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:48:57,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:48:57,457 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 10:48:57,458 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 10:48:57,495 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 10:48:57,496 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:48:57,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 10:48:57,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:48:57,506 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:48:57,687 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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); {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#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; {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-28 10:48:57,688 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 10:48:57,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 10:48:57,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(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; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:57,689 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:57,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:57,690 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:57,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,690 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,691 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,691 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,691 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,691 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,691 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,691 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,691 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,692 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,692 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,693 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,693 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,693 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,693 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,693 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,694 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,694 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,694 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,695 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,695 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,695 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 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; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 10:48:57,696 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 10:48:57,696 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-28 10:48:57,696 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#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)); {8891#false} is VALID [2022-04-28 10:48:57,696 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-28 10:48:57,696 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-28 10:48:57,696 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-28 10:48:57,696 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 10:48:57,696 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:48:57,887 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-28 10:48:57,887 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-28 10:48:57,887 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-28 10:48:57,887 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#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)); {8891#false} is VALID [2022-04-28 10:48:57,887 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-28 10:48:57,888 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 10:48:57,888 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 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; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 10:48:57,888 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,889 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,889 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 10:48:57,889 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,890 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,890 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,890 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,890 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,890 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,891 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,891 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,891 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,891 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,892 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,892 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,892 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,892 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,892 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,893 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,893 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,893 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,893 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,893 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,893 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,894 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 10:48:57,894 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:57,894 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 10:48:57,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(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; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 10:48:57,895 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#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; {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-28 10:48:57,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-28 10:48:57,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 10:48:57,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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); {8890#true} is VALID [2022-04-28 10:48:57,897 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-28 10:48:57,897 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 10:48:57,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:48:57,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [236378595] [2022-04-28 10:48:57,897 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:48:57,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1653923850] [2022-04-28 10:48:57,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1653923850] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:48:57,897 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:48:57,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 10:48:57,898 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:48:57,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [77648190] [2022-04-28 10:48:57,898 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [77648190] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:48:57,898 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:48:57,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 10:48:57,898 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2057463887] [2022-04-28 10:48:57,898 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:48:57,898 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 58 [2022-04-28 10:48:57,898 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:48:57,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 10:48:57,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:48:57,928 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 10:48:57,928 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:48:57,928 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 10:48:57,928 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 10:48:57,928 INFO L87 Difference]: Start difference. First operand 224 states and 323 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 10:48:59,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:48:59,608 INFO L93 Difference]: Finished difference Result 335 states and 499 transitions. [2022-04-28 10:48:59,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 10:48:59,608 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 58 [2022-04-28 10:48:59,608 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:48:59,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 10:48:59,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-28 10:48:59,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 10:48:59,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-28 10:48:59,612 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 153 transitions. [2022-04-28 10:48:59,735 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 10:48:59,742 INFO L225 Difference]: With dead ends: 335 [2022-04-28 10:48:59,743 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 10:48:59,743 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 112 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-28 10:48:59,743 INFO L413 NwaCegarLoop]: 82 mSDtfsCounter, 46 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 283 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 10:48:59,743 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 283 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 10:48:59,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 10:49:00,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 243. [2022-04-28 10:49:00,223 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:49:00,223 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:00,232 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:00,232 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:00,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:00,241 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-28 10:49:00,241 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-28 10:49:00,242 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:00,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:00,243 INFO L74 IsIncluded]: Start isIncluded. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-28 10:49:00,243 INFO L87 Difference]: Start difference. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-28 10:49:00,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:00,252 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-28 10:49:00,252 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-28 10:49:00,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:00,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:00,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:49:00,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:49:00,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:00,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 350 transitions. [2022-04-28 10:49:00,259 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 350 transitions. Word has length 58 [2022-04-28 10:49:00,259 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:49:00,260 INFO L495 AbstractCegarLoop]: Abstraction has 243 states and 350 transitions. [2022-04-28 10:49:00,260 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 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 10:49:00,260 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 350 transitions. [2022-04-28 10:49:00,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:00,756 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 350 transitions. [2022-04-28 10:49:00,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 10:49:00,756 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:49:00,757 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 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 10:49:00,772 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 10:49:00,973 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 10:49:00,973 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:49:00,974 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:49:00,974 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 1 times [2022-04-28 10:49:00,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:00,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1506177333] [2022-04-28 10:49:00,974 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:49:00,974 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 2 times [2022-04-28 10:49:00,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:49:00,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1858999846] [2022-04-28 10:49:00,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:49:00,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:49:00,983 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:49:00,983 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1639473029] [2022-04-28 10:49:00,983 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:49:00,984 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:49:00,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:49:00,984 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 10:49:00,985 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 10:49:01,024 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:49:01,025 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:49:01,025 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 10:49:01,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:49:01,034 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:49:01,304 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-28 10:49:01,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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); {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#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; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-28 10:49:01,305 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 10:49:01,306 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:49:01,306 INFO L290 TraceCheckUtils]: 13: Hoare triple {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:49:01,306 INFO L290 TraceCheckUtils]: 14: Hoare triple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:49:01,307 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} {11084#true} #93#return; {11136#(<= 1 main_~y~0)} is VALID [2022-04-28 10:49:01,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {11136#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 10:49:01,308 INFO L290 TraceCheckUtils]: 17: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 10:49:01,308 INFO L290 TraceCheckUtils]: 18: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 10:49:01,308 INFO L290 TraceCheckUtils]: 19: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 10:49:01,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,309 INFO L290 TraceCheckUtils]: 21: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !false; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,309 INFO L272 TraceCheckUtils]: 22: Hoare triple {11153#(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)); {11084#true} is VALID [2022-04-28 10:49:01,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,310 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #95#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,310 INFO L272 TraceCheckUtils]: 27: Hoare triple {11153#(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)); {11084#true} is VALID [2022-04-28 10:49:01,310 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,310 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,310 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,311 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #97#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,311 INFO L272 TraceCheckUtils]: 32: Hoare triple {11153#(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)); {11084#true} is VALID [2022-04-28 10:49:01,311 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,311 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,312 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #99#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,312 INFO L272 TraceCheckUtils]: 37: Hoare triple {11153#(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)); {11084#true} is VALID [2022-04-28 10:49:01,312 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,312 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,312 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,313 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #101#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,313 INFO L290 TraceCheckUtils]: 42: Hoare triple {11153#(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; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,314 INFO L290 TraceCheckUtils]: 43: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !false; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,314 INFO L272 TraceCheckUtils]: 44: Hoare triple {11220#(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)); {11084#true} is VALID [2022-04-28 10:49:01,314 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,314 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,314 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,315 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #95#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,315 INFO L272 TraceCheckUtils]: 49: Hoare triple {11220#(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)); {11084#true} is VALID [2022-04-28 10:49:01,315 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,315 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,315 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,316 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #97#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,316 INFO L272 TraceCheckUtils]: 54: Hoare triple {11220#(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)); {11084#true} is VALID [2022-04-28 10:49:01,316 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,316 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,316 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,317 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #99#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 10:49:01,317 INFO L272 TraceCheckUtils]: 59: Hoare triple {11220#(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)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:49:01,318 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:49:01,318 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-28 10:49:01,318 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-28 10:49:01,318 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 17 proven. 5 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 10:49:01,318 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:49:01,542 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-28 10:49:01,543 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-28 10:49:01,543 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:49:01,543 INFO L272 TraceCheckUtils]: 59: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:49:01,544 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,544 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,544 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,544 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,544 INFO L272 TraceCheckUtils]: 54: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,545 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,545 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,545 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,545 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,545 INFO L272 TraceCheckUtils]: 49: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,546 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,546 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,546 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,546 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,546 INFO L272 TraceCheckUtils]: 44: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,546 INFO L290 TraceCheckUtils]: 43: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,548 INFO L290 TraceCheckUtils]: 42: Hoare triple {11292#(= 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; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,549 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #101#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,549 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,549 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,549 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,549 INFO L272 TraceCheckUtils]: 37: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 10:49:01,549 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,549 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L272 TraceCheckUtils]: 32: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,550 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,550 INFO L272 TraceCheckUtils]: 27: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,551 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,551 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,551 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,551 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,551 INFO L272 TraceCheckUtils]: 22: Hoare triple {11292#(= 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)); {11084#true} is VALID [2022-04-28 10:49:01,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {11084#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 19: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 18: Hoare triple {11084#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 17: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 16: Hoare triple {11084#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11084#true} {11084#true} #93#return; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 14: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 13: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 10:49:01,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#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; {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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); {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-28 10:49:01,562 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-28 10:49:01,562 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:49:01,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1858999846] [2022-04-28 10:49:01,562 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:49:01,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1639473029] [2022-04-28 10:49:01,563 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1639473029] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 10:49:01,563 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 10:49:01,563 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 10:49:01,563 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:49:01,563 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1506177333] [2022-04-28 10:49:01,563 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1506177333] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:49:01,563 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:49:01,563 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:49:01,563 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [519298878] [2022-04-28 10:49:01,563 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:49:01,563 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 63 [2022-04-28 10:49:01,564 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:49:01,564 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 10:49:01,589 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 10:49:01,590 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 10:49:01,590 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:01,590 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 10:49:01,590 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 10:49:01,590 INFO L87 Difference]: Start difference. First operand 243 states and 350 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 10:49:02,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:02,230 INFO L93 Difference]: Finished difference Result 249 states and 355 transitions. [2022-04-28 10:49:02,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 10:49:02,230 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 63 [2022-04-28 10:49:02,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:49:02,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 10:49:02,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-28 10:49:02,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 10:49:02,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-28 10:49:02,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-28 10:49:02,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:02,275 INFO L225 Difference]: With dead ends: 249 [2022-04-28 10:49:02,275 INFO L226 Difference]: Without dead ends: 247 [2022-04-28 10:49:02,276 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 114 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 10:49:02,276 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 9 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 119 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 10:49:02,276 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 119 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 10:49:02,277 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-28 10:49:02,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 247. [2022-04-28 10:49:02,816 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:49:02,816 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:02,817 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:02,817 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:02,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:02,822 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-28 10:49:02,822 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 10:49:02,823 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:02,823 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:02,823 INFO L74 IsIncluded]: Start isIncluded. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-28 10:49:02,824 INFO L87 Difference]: Start difference. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-28 10:49:02,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:02,828 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-28 10:49:02,828 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 10:49:02,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:02,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:02,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:49:02,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:49:02,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:02,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 353 transitions. [2022-04-28 10:49:02,835 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 353 transitions. Word has length 63 [2022-04-28 10:49:02,835 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:49:02,835 INFO L495 AbstractCegarLoop]: Abstraction has 247 states and 353 transitions. [2022-04-28 10:49:02,835 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 10:49:02,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 247 states and 353 transitions. [2022-04-28 10:49:03,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:03,410 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 10:49:03,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-28 10:49:03,411 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:49:03,411 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 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] [2022-04-28 10:49:03,426 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 10:49:03,623 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 10:49:03,623 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:49:03,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:49:03,624 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 1 times [2022-04-28 10:49:03,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:03,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [473531847] [2022-04-28 10:49:03,624 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:49:03,624 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 2 times [2022-04-28 10:49:03,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:49:03,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2133460375] [2022-04-28 10:49:03,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:49:03,625 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:49:03,633 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:49:03,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [720606996] [2022-04-28 10:49:03,633 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:49:03,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:49:03,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:49:03,634 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 10:49:03,635 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 10:49:03,674 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:49:03,675 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:49:03,675 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 10:49:03,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:49:03,686 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:49:03,838 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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); {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#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; {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,838 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#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; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 10:49:03,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:03,840 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:49:03,841 INFO L290 TraceCheckUtils]: 34: Hoare triple {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:49:03,842 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:49:03,842 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,842 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-28 10:49:03,843 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:03,843 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:03,843 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,843 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,843 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-28 10:49:03,843 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:03,844 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:03,844 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:03,851 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,852 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,852 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= 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; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,852 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,853 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:03,853 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,854 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,854 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,854 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,855 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,855 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:03,855 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= 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)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:49:03,856 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:49:03,856 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-28 10:49:03,856 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-28 10:49:03,856 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-28 10:49:03,857 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:49:20,816 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-28 10:49:20,819 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-28 10:49:20,820 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:49:20,820 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= 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)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:49:20,821 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,821 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,821 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,822 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,822 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,822 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= 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; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 10:49:20,823 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,823 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,823 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= 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; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,824 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,824 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,824 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,824 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:20,824 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:20,825 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-28 10:49:20,825 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,825 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,825 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:20,825 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:20,825 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= 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)); {12960#true} is VALID [2022-04-28 10:49:20,826 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:49:20,826 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:49:20,826 INFO L290 TraceCheckUtils]: 34: Hoare triple {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:49:20,827 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-28 10:49:20,827 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#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; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-28 10:49:20,828 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#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; {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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); {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-28 10:49:20,829 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-28 10:49:20,829 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:49:20,830 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2133460375] [2022-04-28 10:49:20,830 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:49:20,830 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [720606996] [2022-04-28 10:49:20,830 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [720606996] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:49:20,830 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:49:20,830 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 10:49:20,830 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:49:20,830 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [473531847] [2022-04-28 10:49:20,830 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [473531847] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:49:20,830 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:49:20,830 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 10:49:20,830 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1543175611] [2022-04-28 10:49:20,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:49:20,831 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 61 [2022-04-28 10:49:20,831 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:49:20,831 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 10:49:20,862 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 10:49:20,862 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 10:49:20,862 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:20,863 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 10:49:20,863 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 10:49:20,863 INFO L87 Difference]: Start difference. First operand 247 states and 353 transitions. Second operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 10:49:21,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:21,806 INFO L93 Difference]: Finished difference Result 261 states and 364 transitions. [2022-04-28 10:49:21,806 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 10:49:21,806 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 61 [2022-04-28 10:49:21,806 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:49:21,806 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 10:49:21,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-28 10:49:21,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 10:49:21,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-28 10:49:21,808 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 53 transitions. [2022-04-28 10:49:21,851 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 10:49:21,855 INFO L225 Difference]: With dead ends: 261 [2022-04-28 10:49:21,855 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 10:49:21,856 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 10:49:21,856 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 21 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 10:49:21,857 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 144 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 10:49:21,857 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 10:49:22,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 259. [2022-04-28 10:49:22,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:49:22,434 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:22,434 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:22,434 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:22,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:22,442 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-28 10:49:22,442 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 10:49:22,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:22,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:22,444 INFO L74 IsIncluded]: Start isIncluded. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-28 10:49:22,444 INFO L87 Difference]: Start difference. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-28 10:49:22,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:22,449 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-28 10:49:22,449 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 10:49:22,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:22,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:22,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:49:22,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:49:22,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 10:49:22,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 259 states to 259 states and 362 transitions. [2022-04-28 10:49:22,456 INFO L78 Accepts]: Start accepts. Automaton has 259 states and 362 transitions. Word has length 61 [2022-04-28 10:49:22,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:49:22,456 INFO L495 AbstractCegarLoop]: Abstraction has 259 states and 362 transitions. [2022-04-28 10:49:22,457 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 10:49:22,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 259 states and 362 transitions. [2022-04-28 10:49:23,070 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 362 edges. 362 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:23,070 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 10:49:23,071 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-28 10:49:23,071 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:49:23,071 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 10:49:23,087 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-28 10:49:23,277 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 10:49:23,277 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:49:23,278 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:49:23,278 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 3 times [2022-04-28 10:49:23,278 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:23,278 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1852095323] [2022-04-28 10:49:23,278 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:49:23,278 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 4 times [2022-04-28 10:49:23,278 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:49:23,278 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [353465300] [2022-04-28 10:49:23,278 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:49:23,278 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:49:23,287 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:49:23,287 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2020245091] [2022-04-28 10:49:23,287 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 10:49:23,287 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:49:23,287 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:49:23,288 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 10:49:23,289 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 10:49:23,331 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 10:49:23,331 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:49:23,331 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 10:49:23,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:49:23,342 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:49:23,488 INFO L272 TraceCheckUtils]: 0: Hoare triple {14899#true} call ULTIMATE.init(); {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L290 TraceCheckUtils]: 1: Hoare triple {14899#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); {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14899#true} {14899#true} #105#return; {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L272 TraceCheckUtils]: 4: Hoare triple {14899#true} call #t~ret6 := main(); {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L290 TraceCheckUtils]: 5: Hoare triple {14899#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; {14899#true} is VALID [2022-04-28 10:49:23,488 INFO L272 TraceCheckUtils]: 6: Hoare triple {14899#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 7: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 8: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 9: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14899#true} {14899#true} #91#return; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L272 TraceCheckUtils]: 11: Hoare triple {14899#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 14: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14899#true} {14899#true} #93#return; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 16: Hoare triple {14899#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 17: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 18: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-28 10:49:23,489 INFO L290 TraceCheckUtils]: 19: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 20: Hoare triple {14899#true} assume !(~c~0 >= ~b~0); {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 21: Hoare triple {14899#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; {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 22: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 23: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 24: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 25: Hoare triple {14899#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,490 INFO L290 TraceCheckUtils]: 26: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !false; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,490 INFO L272 TraceCheckUtils]: 27: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L290 TraceCheckUtils]: 28: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L290 TraceCheckUtils]: 29: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L290 TraceCheckUtils]: 30: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #95#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,491 INFO L272 TraceCheckUtils]: 32: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L290 TraceCheckUtils]: 33: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,491 INFO L290 TraceCheckUtils]: 34: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,492 INFO L290 TraceCheckUtils]: 35: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,492 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #97#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,492 INFO L272 TraceCheckUtils]: 37: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,492 INFO L290 TraceCheckUtils]: 38: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,492 INFO L290 TraceCheckUtils]: 39: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,492 INFO L290 TraceCheckUtils]: 40: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,493 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #99#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,493 INFO L272 TraceCheckUtils]: 42: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 10:49:23,493 INFO L290 TraceCheckUtils]: 43: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 10:49:23,493 INFO L290 TraceCheckUtils]: 44: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 10:49:23,493 INFO L290 TraceCheckUtils]: 45: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 10:49:23,493 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #101#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 10:49:23,494 INFO L290 TraceCheckUtils]: 47: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 10:49:23,494 INFO L290 TraceCheckUtils]: 48: Hoare triple {15046#(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; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 49: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !false; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 50: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 51: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L272 TraceCheckUtils]: 52: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 53: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 54: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 55: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {14900#false} {14900#false} #95#return; {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L272 TraceCheckUtils]: 57: Hoare triple {14900#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 10:49:23,495 INFO L290 TraceCheckUtils]: 58: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L290 TraceCheckUtils]: 59: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L290 TraceCheckUtils]: 60: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {14900#false} {14900#false} #97#return; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L272 TraceCheckUtils]: 62: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L290 TraceCheckUtils]: 63: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L290 TraceCheckUtils]: 64: Hoare triple {14900#false} assume 0 == ~cond; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L290 TraceCheckUtils]: 65: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-28 10:49:23,496 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-28 10:49:23,496 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 10:49:23,496 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:49:23,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [353465300] [2022-04-28 10:49:23,496 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:49:23,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2020245091] [2022-04-28 10:49:23,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2020245091] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:49:23,497 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:49:23,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:49:23,497 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:49:23,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1852095323] [2022-04-28 10:49:23,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1852095323] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:49:23,497 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:49:23,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 10:49:23,497 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1967223107] [2022-04-28 10:49:23,497 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:49:23,498 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 10:49:23,498 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:49:23,498 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 10:49:23,528 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 10:49:23,528 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 10:49:23,529 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:23,529 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 10:49:23,529 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 10:49:23,529 INFO L87 Difference]: Start difference. First operand 259 states and 362 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 10:49:24,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:24,250 INFO L93 Difference]: Finished difference Result 445 states and 620 transitions. [2022-04-28 10:49:24,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 10:49:24,250 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 10:49:24,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:49:24,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 10:49:24,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-28 10:49:24,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 10:49:24,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-28 10:49:24,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2022-04-28 10:49:24,308 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:24,313 INFO L225 Difference]: With dead ends: 445 [2022-04-28 10:49:24,313 INFO L226 Difference]: Without dead ends: 270 [2022-04-28 10:49:24,313 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 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 10:49:24,314 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 3 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 10:49:24,314 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [3 Valid, 94 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 10:49:24,314 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 270 states. [2022-04-28 10:49:24,906 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 270 to 250. [2022-04-28 10:49:24,906 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:49:24,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 10:49:24,907 INFO L74 IsIncluded]: Start isIncluded. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 10:49:24,907 INFO L87 Difference]: Start difference. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 10:49:24,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:24,912 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-28 10:49:24,912 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-28 10:49:24,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:24,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:24,913 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-28 10:49:24,913 INFO L87 Difference]: Start difference. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-28 10:49:24,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:49:24,919 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-28 10:49:24,919 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-28 10:49:24,920 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:49:24,920 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:49:24,920 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:49:24,920 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:49:24,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 10:49:24,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 344 transitions. [2022-04-28 10:49:24,925 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 344 transitions. Word has length 66 [2022-04-28 10:49:24,926 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:49:24,926 INFO L495 AbstractCegarLoop]: Abstraction has 250 states and 344 transitions. [2022-04-28 10:49:24,926 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 10:49:24,926 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 250 states and 344 transitions. [2022-04-28 10:49:25,533 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 344 edges. 344 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:49:25,544 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 344 transitions. [2022-04-28 10:49:25,545 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-28 10:49:25,545 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:49:25,545 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 10:49:25,560 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-28 10:49:25,749 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 10:49:25,749 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:49:25,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:49:25,750 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 5 times [2022-04-28 10:49:25,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:49:25,750 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [662194650] [2022-04-28 10:49:25,750 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:49:25,750 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 6 times [2022-04-28 10:49:25,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:49:25,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1641263550] [2022-04-28 10:49:25,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:49:25,751 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:49:25,759 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:49:25,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1771192489] [2022-04-28 10:49:25,759 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 10:49:25,759 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:49:25,759 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:49:25,760 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 10:49:25,761 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 10:49:25,805 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 10:49:25,805 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:49:25,806 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-28 10:49:25,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:49:25,819 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:50:00,165 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:50:08,104 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:50:08,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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); {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#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; {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,660 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-28 10:50:08,661 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17087#(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 10:50:08,662 INFO L290 TraceCheckUtils]: 17: Hoare triple {17087#(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 !false; {17087#(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 10:50:08,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {17087#(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; {17094#(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 10:50:08,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {17094#(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 !false; {17094#(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 10:50:08,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {17094#(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); {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 10:50:08,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~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; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 10:50:08,663 INFO L290 TraceCheckUtils]: 22: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 10:50:08,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~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; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !false; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,665 INFO L290 TraceCheckUtils]: 25: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,665 INFO L290 TraceCheckUtils]: 26: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !false; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,665 INFO L272 TraceCheckUtils]: 27: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,665 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,665 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,665 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,666 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #95#return; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,666 INFO L272 TraceCheckUtils]: 32: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,666 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:08,667 INFO L290 TraceCheckUtils]: 34: Hoare triple {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:08,667 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:08,668 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #97#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,668 INFO L272 TraceCheckUtils]: 37: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,669 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,669 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,669 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,669 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #99#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,669 INFO L272 TraceCheckUtils]: 42: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,670 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,670 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,670 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,670 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #101#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,671 INFO L290 TraceCheckUtils]: 47: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 10:50:08,671 INFO L290 TraceCheckUtils]: 48: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 10:50:08,672 INFO L290 TraceCheckUtils]: 49: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 10:50:08,672 INFO L290 TraceCheckUtils]: 50: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 10:50:08,675 INFO L290 TraceCheckUtils]: 51: Hoare triple {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= 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; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-28 10:50:08,675 INFO L290 TraceCheckUtils]: 52: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !false; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-28 10:50:08,676 INFO L290 TraceCheckUtils]: 53: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 10:50:08,676 INFO L290 TraceCheckUtils]: 54: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 10:50:08,677 INFO L290 TraceCheckUtils]: 55: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 10:50:08,677 INFO L290 TraceCheckUtils]: 56: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 10:50:08,677 INFO L272 TraceCheckUtils]: 57: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:08,677 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:08,677 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:08,677 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:08,678 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} #95#return; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 10:50:08,680 INFO L272 TraceCheckUtils]: 62: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:50:08,680 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:08,680 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-28 10:50:08,681 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-28 10:50:08,681 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-28 10:50:08,681 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:50:22,384 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:50:25,300 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-28 10:50:25,300 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-28 10:50:25,301 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:25,301 INFO L272 TraceCheckUtils]: 62: Hoare triple {17258#(= 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)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:50:25,302 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,302 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:25,302 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:25,302 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:25,302 INFO L272 TraceCheckUtils]: 57: Hoare triple {17258#(= 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)); {17034#true} is VALID [2022-04-28 10:50:25,303 INFO L290 TraceCheckUtils]: 56: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,303 INFO L290 TraceCheckUtils]: 55: Hoare triple {17258#(= 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,303 INFO L290 TraceCheckUtils]: 54: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,304 INFO L290 TraceCheckUtils]: 53: Hoare triple {17258#(= 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,304 INFO L290 TraceCheckUtils]: 52: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,877 INFO L290 TraceCheckUtils]: 51: Hoare triple {17292#(= (+ (* 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; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:50:25,877 INFO L290 TraceCheckUtils]: 50: Hoare triple {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {17292#(= (+ (* 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 10:50:25,878 INFO L290 TraceCheckUtils]: 49: Hoare triple {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !false; {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 10:50:26,435 INFO L290 TraceCheckUtils]: 48: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17296#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 10:50:26,436 INFO L290 TraceCheckUtils]: 47: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} assume !(~c~0 >= 2 * ~v~0); {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-28 10:50:26,437 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} #101#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-28 10:50:26,437 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:26,437 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:26,437 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:26,437 INFO L272 TraceCheckUtils]: 42: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:26,438 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} #99#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-28 10:50:26,438 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:26,438 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:26,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:26,438 INFO L272 TraceCheckUtils]: 37: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:26,439 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)))))} #97#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~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))))} is VALID [2022-04-28 10:50:26,439 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:26,439 INFO L290 TraceCheckUtils]: 34: Hoare triple {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:26,440 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:50:26,440 INFO L272 TraceCheckUtils]: 32: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:26,440 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)))))} #95#return; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 10:50:26,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:26,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:26,441 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:26,441 INFO L272 TraceCheckUtils]: 27: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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)); {17034#true} is VALID [2022-04-28 10:50:26,441 INFO L290 TraceCheckUtils]: 26: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 !false; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 10:50:26,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~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; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~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 10:50:26,443 INFO L290 TraceCheckUtils]: 24: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~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 !false; {17375#(or (<= (* main_~b~0 2) main_~c~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 10:50:26,452 INFO L290 TraceCheckUtils]: 23: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17375#(or (<= (* main_~b~0 2) main_~c~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 10:50:26,452 INFO L290 TraceCheckUtils]: 22: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 10:50:28,454 WARN L290 TraceCheckUtils]: 21: Hoare triple {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~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; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is UNKNOWN [2022-04-28 10:50:28,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !(~c~0 >= ~b~0); {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} is VALID [2022-04-28 10:50:28,457 INFO L290 TraceCheckUtils]: 19: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !false; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-28 10:50:28,459 INFO L290 TraceCheckUtils]: 18: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-28 10:50:28,460 INFO L290 TraceCheckUtils]: 17: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !false; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 10:50:28,461 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 10:50:28,461 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-28 10:50:28,461 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:28,461 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#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; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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); {17034#true} is VALID [2022-04-28 10:50:28,462 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-28 10:50:28,463 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 16 proven. 28 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-28 10:50:28,463 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:50:28,463 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1641263550] [2022-04-28 10:50:28,463 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:50:28,463 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1771192489] [2022-04-28 10:50:28,463 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1771192489] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:50:28,463 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:50:28,464 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16] total 28 [2022-04-28 10:50:28,464 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:50:28,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [662194650] [2022-04-28 10:50:28,464 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [662194650] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:50:28,464 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:50:28,464 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 10:50:28,464 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2004693361] [2022-04-28 10:50:28,464 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:50:28,464 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-28 10:50:28,464 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:50:28,465 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 10:50:28,513 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 10:50:28,514 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 10:50:28,514 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:50:28,514 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 10:50:28,514 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=124, Invalid=632, Unknown=0, NotChecked=0, Total=756 [2022-04-28 10:50:28,514 INFO L87 Difference]: Start difference. First operand 250 states and 344 transitions. Second operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 10:50:34,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:50:34,425 INFO L93 Difference]: Finished difference Result 321 states and 431 transitions. [2022-04-28 10:50:34,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 10:50:34,425 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-28 10:50:34,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:50:34,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 10:50:34,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-28 10:50:34,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 10:50:34,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-28 10:50:34,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 143 transitions. [2022-04-28 10:50:34,585 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:50:34,590 INFO L225 Difference]: With dead ends: 321 [2022-04-28 10:50:34,591 INFO L226 Difference]: Without dead ends: 319 [2022-04-28 10:50:34,591 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 226 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 10:50:34,591 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 61 mSDsluCounter, 350 mSDsCounter, 0 mSdLazyCounter, 920 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 395 SdHoareTripleChecker+Invalid, 960 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 920 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-28 10:50:34,592 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 395 Invalid, 960 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 920 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-28 10:50:34,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-28 10:50:35,286 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 305. [2022-04-28 10:50:35,286 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:50:35,287 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 10:50:35,287 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 10:50:35,291 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 10:50:35,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:50:35,298 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-28 10:50:35,299 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-28 10:50:35,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:50:35,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:50:35,300 INFO L74 IsIncluded]: Start isIncluded. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-28 10:50:35,300 INFO L87 Difference]: Start difference. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-28 10:50:35,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:50:35,307 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-28 10:50:35,307 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-28 10:50:35,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:50:35,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:50:35,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:50:35,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:50:35,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 10:50:35,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 415 transitions. [2022-04-28 10:50:35,317 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 415 transitions. Word has length 66 [2022-04-28 10:50:35,317 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:50:35,317 INFO L495 AbstractCegarLoop]: Abstraction has 305 states and 415 transitions. [2022-04-28 10:50:35,317 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 10:50:35,317 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 305 states and 415 transitions. [2022-04-28 10:50:36,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 415 edges. 415 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:50:36,124 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 415 transitions. [2022-04-28 10:50:36,124 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 10:50:36,124 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:50:36,124 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 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 10:50:36,140 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-28 10:50:36,340 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 10:50:36,341 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:50:36,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:50:36,341 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 1 times [2022-04-28 10:50:36,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:50:36,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1578360259] [2022-04-28 10:50:36,341 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:50:36,341 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 2 times [2022-04-28 10:50:36,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:50:36,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [164956183] [2022-04-28 10:50:36,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:50:36,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:50:36,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:50:36,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1934688249] [2022-04-28 10:50:36,353 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:50:36,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:50:36,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:50:36,361 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 10:50:36,361 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 10:50:36,405 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:50:36,405 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:50:36,406 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 62 conjunts are in the unsatisfiable core [2022-04-28 10:50:36,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:50:36,424 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:50:37,174 INFO L272 TraceCheckUtils]: 0: Hoare triple {19365#true} call ULTIMATE.init(); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {19365#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); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 2: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19365#true} {19365#true} #105#return; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L272 TraceCheckUtils]: 4: Hoare triple {19365#true} call #t~ret6 := main(); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 5: Hoare triple {19365#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; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L272 TraceCheckUtils]: 6: Hoare triple {19365#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 7: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 8: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 9: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19365#true} {19365#true} #91#return; {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L272 TraceCheckUtils]: 11: Hoare triple {19365#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,175 INFO L290 TraceCheckUtils]: 12: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,176 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19365#true} {19365#true} #93#return; {19365#true} is VALID [2022-04-28 10:50:37,176 INFO L290 TraceCheckUtils]: 16: Hoare triple {19365#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,176 INFO L290 TraceCheckUtils]: 17: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {19425#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,177 INFO L290 TraceCheckUtils]: 19: Hoare triple {19425#(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_~p~0 1))} assume !false; {19425#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {19425#(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_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,178 INFO L290 TraceCheckUtils]: 21: Hoare triple {19432#(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_~p~0 1))} assume !false; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,178 INFO L272 TraceCheckUtils]: 22: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,178 INFO L290 TraceCheckUtils]: 23: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,178 INFO L290 TraceCheckUtils]: 24: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,179 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #95#return; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,179 INFO L272 TraceCheckUtils]: 27: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,179 INFO L290 TraceCheckUtils]: 28: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,179 INFO L290 TraceCheckUtils]: 29: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,179 INFO L290 TraceCheckUtils]: 30: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,180 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #97#return; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,180 INFO L272 TraceCheckUtils]: 32: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,180 INFO L290 TraceCheckUtils]: 33: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,180 INFO L290 TraceCheckUtils]: 34: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,180 INFO L290 TraceCheckUtils]: 35: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,181 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #99#return; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,181 INFO L272 TraceCheckUtils]: 37: Hoare triple {19432#(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_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,181 INFO L290 TraceCheckUtils]: 38: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,181 INFO L290 TraceCheckUtils]: 39: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,181 INFO L290 TraceCheckUtils]: 40: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,182 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19365#true} {19432#(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_~p~0 1))} #101#return; {19432#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,182 INFO L290 TraceCheckUtils]: 42: Hoare triple {19432#(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_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {19499#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,183 INFO L290 TraceCheckUtils]: 43: Hoare triple {19499#(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_~p~0 1))} assume !false; {19499#(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_~p~0 1))} is VALID [2022-04-28 10:50:37,183 INFO L272 TraceCheckUtils]: 44: Hoare triple {19499#(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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,183 INFO L290 TraceCheckUtils]: 45: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:37,183 INFO L290 TraceCheckUtils]: 46: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,183 INFO L290 TraceCheckUtils]: 47: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,184 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19499#(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_~p~0 1))} #95#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,185 INFO L272 TraceCheckUtils]: 49: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~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)); {19365#true} is VALID [2022-04-28 10:50:37,185 INFO L290 TraceCheckUtils]: 50: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:37,185 INFO L290 TraceCheckUtils]: 51: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,187 INFO L290 TraceCheckUtils]: 52: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,188 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,188 INFO L272 TraceCheckUtils]: 54: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,188 INFO L290 TraceCheckUtils]: 55: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 10:50:37,188 INFO L290 TraceCheckUtils]: 56: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 10:50:37,188 INFO L290 TraceCheckUtils]: 57: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 10:50:37,189 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {19365#true} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #99#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,189 INFO L272 TraceCheckUtils]: 59: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 10:50:37,189 INFO L290 TraceCheckUtils]: 60: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:37,189 INFO L290 TraceCheckUtils]: 61: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,190 INFO L290 TraceCheckUtils]: 62: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:50:37,190 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #101#return; {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,191 INFO L290 TraceCheckUtils]: 64: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,191 INFO L290 TraceCheckUtils]: 65: Hoare triple {19520#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,192 INFO L290 TraceCheckUtils]: 66: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,192 INFO L290 TraceCheckUtils]: 67: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:50:37,193 INFO L290 TraceCheckUtils]: 68: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= 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; {19582#(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_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 10:50:37,193 INFO L290 TraceCheckUtils]: 69: Hoare triple {19582#(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_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {19582#(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_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 10:50:37,194 INFO L290 TraceCheckUtils]: 70: Hoare triple {19582#(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_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 10:50:37,194 INFO L272 TraceCheckUtils]: 71: Hoare triple {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) 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)); {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:50:37,195 INFO L290 TraceCheckUtils]: 72: Hoare triple {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:50:37,195 INFO L290 TraceCheckUtils]: 73: Hoare triple {19597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19366#false} is VALID [2022-04-28 10:50:37,195 INFO L290 TraceCheckUtils]: 74: Hoare triple {19366#false} assume !false; {19366#false} is VALID [2022-04-28 10:50:37,195 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 52 proven. 19 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-28 10:50:37,195 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:51:26,121 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:51:32,135 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:51:43,755 WARN L855 $PredicateComparison]: unable to prove that (or (not (= c_main_~v~0 (* c_main_~b~0 c_main_~d~0))) (let ((.cse11 (+ c_main_~d~0 c_main_~k~0))) (let ((.cse5 (+ (* (- 1) c_main_~r~0 c_main_~y~0) c_main_~a~0)) (.cse0 (= c_main_~p~0 0)) (.cse6 (* c_main_~s~0 c_main_~y~0)) (.cse1 (* (+ (* (- 1) (* c_main_~s~0 .cse11)) c_main_~r~0) c_main_~y~0)) (.cse2 (+ (* (- 1) c_main_~q~0 .cse11) c_main_~p~0))) (and (let ((.cse3 (div .cse5 c_main_~p~0))) (let ((.cse4 (+ (* c_main_~q~0 .cse3) .cse6))) (or .cse0 (= (+ c_main_~b~0 .cse1 (* .cse2 .cse3)) .cse4) (not (= (mod .cse5 c_main_~p~0) 0)) (not (= c_main_~b~0 .cse4))))) (or (not (= .cse5 0)) (not .cse0) (let ((.cse7 (= c_main_~q~0 0)) (.cse8 (+ c_main_~b~0 (* (- 1) c_main_~s~0 c_main_~y~0)))) (and (or (not .cse7) (not (= 0 .cse8)) (forall ((main_~x~0 Int)) (= (+ (* c_main_~s~0 c_main_~y~0) (* c_main_~q~0 main_~x~0)) (let ((.cse9 (+ c_main_~d~0 c_main_~k~0))) (+ (* (+ (* (- 1) c_main_~q~0 .cse9) c_main_~p~0) main_~x~0) c_main_~b~0 (* (+ (* (- 1) (* c_main_~s~0 .cse9)) c_main_~r~0) c_main_~y~0)))))) (or .cse7 (not (= (mod .cse8 c_main_~q~0) 0)) (let ((.cse10 (div .cse8 c_main_~q~0))) (= (+ .cse6 (* c_main_~q~0 .cse10)) (+ c_main_~b~0 .cse1 (* .cse2 .cse10))))))))))) (not (= (+ c_main_~c~0 (* (- 1) c_main_~v~0)) 0))) is different from true [2022-04-28 10:51:43,757 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:51:43,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [164956183] [2022-04-28 10:51:43,757 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:51:43,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1934688249] [2022-04-28 10:51:43,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1934688249] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 10:51:43,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 10:51:43,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-28 10:51:43,758 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:51:43,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1578360259] [2022-04-28 10:51:43,758 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1578360259] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:51:43,758 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:51:43,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 10:51:43,758 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [584973529] [2022-04-28 10:51:43,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:51:43,758 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 75 [2022-04-28 10:51:43,759 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:51:43,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 10:51:43,805 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 10:51:43,805 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 10:51:43,805 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:51:43,806 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 10:51:43,806 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=357, Unknown=1, NotChecked=38, Total=462 [2022-04-28 10:51:43,806 INFO L87 Difference]: Start difference. First operand 305 states and 415 transitions. Second operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 10:51:46,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:51:46,967 INFO L93 Difference]: Finished difference Result 388 states and 532 transitions. [2022-04-28 10:51:46,967 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 10:51:46,967 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 75 [2022-04-28 10:51:46,967 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:51:46,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 10:51:46,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-28 10:51:46,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 10:51:46,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-28 10:51:46,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 138 transitions. [2022-04-28 10:51:47,115 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:51:47,123 INFO L225 Difference]: With dead ends: 388 [2022-04-28 10:51:47,124 INFO L226 Difference]: Without dead ends: 385 [2022-04-28 10:51:47,124 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=96, Invalid=507, Unknown=1, NotChecked=46, Total=650 [2022-04-28 10:51:47,124 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 41 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 795 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 825 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 795 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-28 10:51:47,125 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 331 Invalid, 825 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 795 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-28 10:51:47,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 385 states. [2022-04-28 10:51:47,844 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 385 to 318. [2022-04-28 10:51:47,844 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:51:47,844 INFO L82 GeneralOperation]: Start isEquivalent. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 10:51:47,845 INFO L74 IsIncluded]: Start isIncluded. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 10:51:47,845 INFO L87 Difference]: Start difference. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 10:51:47,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:51:47,855 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-28 10:51:47,855 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-28 10:51:47,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:51:47,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:51:47,857 INFO L74 IsIncluded]: Start isIncluded. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-28 10:51:47,857 INFO L87 Difference]: Start difference. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-28 10:51:47,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:51:47,865 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-28 10:51:47,865 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-28 10:51:47,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:51:47,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:51:47,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:51:47,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:51:47,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 10:51:47,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 318 states to 318 states and 433 transitions. [2022-04-28 10:51:47,873 INFO L78 Accepts]: Start accepts. Automaton has 318 states and 433 transitions. Word has length 75 [2022-04-28 10:51:47,873 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:51:47,873 INFO L495 AbstractCegarLoop]: Abstraction has 318 states and 433 transitions. [2022-04-28 10:51:47,873 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 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 10:51:47,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 318 states and 433 transitions. [2022-04-28 10:51:48,762 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 433 edges. 433 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:51:48,762 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 433 transitions. [2022-04-28 10:51:48,763 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-28 10:51:48,763 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:51:48,763 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 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 10:51:48,779 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 10:51:48,975 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 10:51:48,975 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:51:48,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:51:48,976 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 3 times [2022-04-28 10:51:48,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:51:48,976 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [883741119] [2022-04-28 10:51:48,976 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:51:48,976 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 4 times [2022-04-28 10:51:48,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:51:48,976 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1131692101] [2022-04-28 10:51:48,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:51:48,977 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:51:48,985 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:51:48,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1975155328] [2022-04-28 10:51:48,985 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 10:51:48,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:51:48,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:51:48,986 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 10:51:48,988 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 10:51:49,029 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 10:51:49,029 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:51:49,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-28 10:51:49,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:51:49,058 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:51:50,201 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-28 10:51:50,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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); {21882#true} is VALID [2022-04-28 10:51:50,201 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,201 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-28 10:51:50,201 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-28 10:51:50,201 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#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; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-28 10:51:50,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21935#(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 10:51:50,203 INFO L290 TraceCheckUtils]: 17: Hoare triple {21935#(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 !false; {21935#(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 10:51:50,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {21935#(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; {21942#(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 10:51:50,204 INFO L290 TraceCheckUtils]: 19: Hoare triple {21942#(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 !false; {21942#(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 10:51:50,204 INFO L290 TraceCheckUtils]: 20: Hoare triple {21942#(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); {21942#(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 10:51:50,204 INFO L290 TraceCheckUtils]: 21: Hoare triple {21942#(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; {21952#(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 10:51:50,205 INFO L290 TraceCheckUtils]: 22: Hoare triple {21952#(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 !false; {21952#(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 10:51:50,205 INFO L290 TraceCheckUtils]: 23: Hoare triple {21952#(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; {21959#(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 10:51:50,205 INFO L290 TraceCheckUtils]: 24: Hoare triple {21959#(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 !false; {21959#(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 10:51:50,206 INFO L290 TraceCheckUtils]: 25: Hoare triple {21959#(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; {21966#(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))} is VALID [2022-04-28 10:51:50,206 INFO L290 TraceCheckUtils]: 26: Hoare triple {21966#(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))} assume !false; {21966#(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))} is VALID [2022-04-28 10:51:50,206 INFO L272 TraceCheckUtils]: 27: Hoare triple {21966#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:51:50,206 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,206 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,206 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,207 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {21966#(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))} #95#return; {21966#(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))} is VALID [2022-04-28 10:51:50,207 INFO L272 TraceCheckUtils]: 32: Hoare triple {21966#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:51:50,207 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:51:50,208 INFO L290 TraceCheckUtils]: 34: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,208 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,209 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {21966#(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))} #97#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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 10:51:50,209 INFO L272 TraceCheckUtils]: 37: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {21882#true} is VALID [2022-04-28 10:51:50,209 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,209 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,209 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,210 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} #99#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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 10:51:50,210 INFO L272 TraceCheckUtils]: 42: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {21882#true} is VALID [2022-04-28 10:51:50,210 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:51:50,210 INFO L290 TraceCheckUtils]: 44: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,211 INFO L290 TraceCheckUtils]: 45: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,211 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} #101#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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 10:51:50,212 INFO L290 TraceCheckUtils]: 47: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} is VALID [2022-04-28 10:51:50,212 INFO L290 TraceCheckUtils]: 48: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} assume !false; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} is VALID [2022-04-28 10:51:50,212 INFO L272 TraceCheckUtils]: 49: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:51:50,213 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:51:50,213 INFO L290 TraceCheckUtils]: 51: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,213 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,214 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))} #95#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:51:50,214 INFO L272 TraceCheckUtils]: 54: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~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)); {21882#true} is VALID [2022-04-28 10:51:50,214 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,214 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,214 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,215 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:51:50,215 INFO L272 TraceCheckUtils]: 59: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~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)); {21882#true} is VALID [2022-04-28 10:51:50,215 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:51:50,215 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:51:50,215 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:51:50,216 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:51:50,216 INFO L272 TraceCheckUtils]: 64: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~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)); {21882#true} is VALID [2022-04-28 10:51:50,216 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:51:50,218 INFO L290 TraceCheckUtils]: 66: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,218 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:51:50,218 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:51:50,219 INFO L290 TraceCheckUtils]: 69: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:51:50,220 INFO L290 TraceCheckUtils]: 70: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~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; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 10:51:50,220 INFO L290 TraceCheckUtils]: 71: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !false; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 10:51:50,221 INFO L290 TraceCheckUtils]: 72: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !(~c~0 >= ~b~0); {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 10:51:50,221 INFO L290 TraceCheckUtils]: 73: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~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; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 10:51:50,222 INFO L290 TraceCheckUtils]: 74: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 10:51:50,222 INFO L290 TraceCheckUtils]: 75: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 10:51:50,224 INFO L272 TraceCheckUtils]: 76: Hoare triple {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 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)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:51:50,225 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:51:50,225 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-28 10:51:50,225 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-28 10:51:50,225 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 39 proven. 44 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-28 10:51:50,225 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:52:32,921 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-28 10:52:32,922 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-28 10:52:32,922 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:52:32,923 INFO L272 TraceCheckUtils]: 76: Hoare triple {22148#(= (+ (* 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)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:52:32,923 INFO L290 TraceCheckUtils]: 75: Hoare triple {22152#(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); {22148#(= (+ (* 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 10:52:32,924 INFO L290 TraceCheckUtils]: 74: Hoare triple {22152#(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 !false; {22152#(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 10:52:33,003 INFO L290 TraceCheckUtils]: 73: Hoare triple {22159#(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; {22152#(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 10:52:33,003 INFO L290 TraceCheckUtils]: 72: Hoare triple {22159#(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); {22159#(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 10:52:33,004 INFO L290 TraceCheckUtils]: 71: Hoare triple {22159#(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 !false; {22159#(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 10:52:33,053 INFO L290 TraceCheckUtils]: 70: Hoare triple {22169#(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; {22159#(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 10:52:33,053 INFO L290 TraceCheckUtils]: 69: Hoare triple {22169#(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); {22169#(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 10:52:33,054 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22176#(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))))} #101#return; {22169#(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 10:52:33,055 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,055 INFO L290 TraceCheckUtils]: 66: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,055 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:52:33,055 INFO L272 TraceCheckUtils]: 64: Hoare triple {22176#(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)); {21882#true} is VALID [2022-04-28 10:52:33,056 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22176#(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))))} #99#return; {22176#(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 10:52:33,056 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,056 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,056 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,057 INFO L272 TraceCheckUtils]: 59: Hoare triple {22176#(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)); {21882#true} is VALID [2022-04-28 10:52:33,057 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22176#(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))))} #97#return; {22176#(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 10:52:33,057 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,057 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,057 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,057 INFO L272 TraceCheckUtils]: 54: Hoare triple {22176#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:52:33,058 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22223#(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_~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))))} #95#return; {22176#(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 10:52:33,059 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,059 INFO L290 TraceCheckUtils]: 51: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,059 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:52:33,059 INFO L272 TraceCheckUtils]: 49: Hoare triple {22223#(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_~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)); {21882#true} is VALID [2022-04-28 10:52:33,060 INFO L290 TraceCheckUtils]: 48: Hoare triple {22223#(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_~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 !false; {22223#(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_~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 10:52:33,089 INFO L290 TraceCheckUtils]: 47: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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; {22223#(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_~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 10:52:33,089 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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))))} #101#return; {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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 10:52:33,089 INFO L290 TraceCheckUtils]: 45: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,090 INFO L290 TraceCheckUtils]: 44: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,090 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,090 INFO L272 TraceCheckUtils]: 42: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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)); {21882#true} is VALID [2022-04-28 10:52:33,090 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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))))} #99#return; {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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 10:52:33,090 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,091 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,091 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,091 INFO L272 TraceCheckUtils]: 37: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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)); {21882#true} is VALID [2022-04-28 10:52:33,092 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22276#(or (not (= (* main_~v~0 2) (* 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_~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))))} #97#return; {22242#(or (not (= (* main_~v~0 2) (* 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_~c~0 (* (- 2) main_~v~0)) 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 10:52:33,092 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,092 INFO L290 TraceCheckUtils]: 34: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:52:33,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:52:33,093 INFO L272 TraceCheckUtils]: 32: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* 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_~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)); {21882#true} is VALID [2022-04-28 10:52:33,093 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {22276#(or (not (= (* main_~v~0 2) (* 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_~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))))} #95#return; {22276#(or (not (= (* main_~v~0 2) (* 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_~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 10:52:33,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,094 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,094 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,094 INFO L272 TraceCheckUtils]: 27: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* 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_~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)); {21882#true} is VALID [2022-04-28 10:52:33,094 INFO L290 TraceCheckUtils]: 26: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* 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_~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 !false; {22276#(or (not (= (* main_~v~0 2) (* 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_~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 10:52:33,095 INFO L290 TraceCheckUtils]: 25: Hoare triple {22310#(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 (= (+ (* (- 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; {22276#(or (not (= (* main_~v~0 2) (* 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_~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 10:52:33,096 INFO L290 TraceCheckUtils]: 24: Hoare triple {22310#(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 (= (+ (* (- 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 !false; {22310#(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 (= (+ (* (- 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 10:52:33,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {22310#(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 (= (+ (* (- 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 10:52:33,097 INFO L290 TraceCheckUtils]: 22: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 21: Hoare triple {21882#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; {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {21882#true} assume !(~c~0 >= ~b~0); {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 19: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 18: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 17: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 10:52:33,097 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#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; {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-28 10:52:33,098 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-28 10:52:33,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 10:52:33,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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); {21882#true} is VALID [2022-04-28 10:52:33,099 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-28 10:52:33,099 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 49 proven. 29 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-04-28 10:52:33,099 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:52:33,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1131692101] [2022-04-28 10:52:33,099 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:52:33,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1975155328] [2022-04-28 10:52:33,100 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1975155328] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:52:33,100 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:52:33,100 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15] total 27 [2022-04-28 10:52:33,100 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:52:33,100 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [883741119] [2022-04-28 10:52:33,100 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [883741119] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:52:33,100 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:52:33,100 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 10:52:33,100 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [165896983] [2022-04-28 10:52:33,100 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:52:33,101 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-28 10:52:33,101 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:52:33,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 10:52:33,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:52:33,164 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 10:52:33,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:52:33,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 10:52:33,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=593, Unknown=0, NotChecked=0, Total=702 [2022-04-28 10:52:33,165 INFO L87 Difference]: Start difference. First operand 318 states and 433 transitions. Second operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 10:52:38,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:52:38,080 INFO L93 Difference]: Finished difference Result 406 states and 555 transitions. [2022-04-28 10:52:38,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 10:52:38,080 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-28 10:52:38,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:52:38,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 10:52:38,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-28 10:52:38,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 10:52:38,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-28 10:52:38,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 170 transitions. [2022-04-28 10:52:38,261 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:52:38,270 INFO L225 Difference]: With dead ends: 406 [2022-04-28 10:52:38,270 INFO L226 Difference]: Without dead ends: 403 [2022-04-28 10:52:38,270 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 131 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=148, Invalid=844, Unknown=0, NotChecked=0, Total=992 [2022-04-28 10:52:38,270 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 69 mSDsluCounter, 325 mSDsCounter, 0 mSdLazyCounter, 1112 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 379 SdHoareTripleChecker+Invalid, 1189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 10:52:38,271 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [90 Valid, 379 Invalid, 1189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1112 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 10:52:38,271 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states. [2022-04-28 10:52:39,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 387. [2022-04-28 10:52:39,161 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:52:39,161 INFO L82 GeneralOperation]: Start isEquivalent. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 10:52:39,162 INFO L74 IsIncluded]: Start isIncluded. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 10:52:39,162 INFO L87 Difference]: Start difference. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 10:52:39,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:52:39,174 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-28 10:52:39,174 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-28 10:52:39,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:52:39,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:52:39,175 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-28 10:52:39,176 INFO L87 Difference]: Start difference. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-28 10:52:39,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:52:39,185 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-28 10:52:39,185 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-28 10:52:39,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:52:39,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:52:39,186 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:52:39,186 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:52:39,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 10:52:39,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 535 transitions. [2022-04-28 10:52:39,200 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 535 transitions. Word has length 80 [2022-04-28 10:52:39,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:52:39,201 INFO L495 AbstractCegarLoop]: Abstraction has 387 states and 535 transitions. [2022-04-28 10:52:39,201 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 10:52:39,201 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 387 states and 535 transitions. [2022-04-28 10:52:40,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 535 edges. 535 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:52:40,377 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 535 transitions. [2022-04-28 10:52:40,378 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-28 10:52:40,378 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:52:40,378 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 10, 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] [2022-04-28 10:52:40,395 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 10:52:40,582 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 10:52:40,583 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:52:40,583 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:52:40,583 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 1 times [2022-04-28 10:52:40,583 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:52:40,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [277963945] [2022-04-28 10:52:40,584 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:52:40,584 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 2 times [2022-04-28 10:52:40,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:52:40,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1929231747] [2022-04-28 10:52:40,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:52:40,584 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:52:40,593 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:52:40,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2002358614] [2022-04-28 10:52:40,593 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:52:40,593 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:52:40,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:52:40,594 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 10:52:40,595 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 10:52:40,650 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:52:40,651 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:52:40,652 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 10:52:40,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:52:40,665 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:52:41,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-28 10:52:41,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#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; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,096 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-28 10:52:41,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-28 10:52:41,096 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-28 10:52:41,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 10:52:41,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 10:52:41,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {24849#(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; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,097 INFO L290 TraceCheckUtils]: 21: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !false; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,097 INFO L272 TraceCheckUtils]: 22: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,098 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #95#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,098 INFO L272 TraceCheckUtils]: 27: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,098 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,098 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,099 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #97#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,099 INFO L272 TraceCheckUtils]: 32: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,099 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,099 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,100 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #99#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,100 INFO L272 TraceCheckUtils]: 37: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,100 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,100 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,100 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,100 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #101#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 10:52:41,101 INFO L290 TraceCheckUtils]: 42: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,101 INFO L290 TraceCheckUtils]: 43: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !false; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,101 INFO L272 TraceCheckUtils]: 44: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,101 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,101 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,101 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,102 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #95#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,102 INFO L272 TraceCheckUtils]: 49: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,102 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,102 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,102 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,103 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #97#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,103 INFO L272 TraceCheckUtils]: 54: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,103 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,103 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,103 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,104 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #99#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,104 INFO L272 TraceCheckUtils]: 59: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,104 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,104 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,104 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,105 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #101#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 10:52:41,105 INFO L290 TraceCheckUtils]: 64: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !(~c~0 >= 2 * ~v~0); {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 10:52:41,107 INFO L290 TraceCheckUtils]: 65: Hoare triple {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,107 INFO L290 TraceCheckUtils]: 66: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,108 INFO L290 TraceCheckUtils]: 67: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,108 INFO L290 TraceCheckUtils]: 68: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,108 INFO L272 TraceCheckUtils]: 69: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,108 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,108 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,108 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,109 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #95#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,109 INFO L272 TraceCheckUtils]: 74: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:52:41,109 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:52:41,109 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:52:41,109 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:52:41,110 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #97#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 10:52:41,110 INFO L272 TraceCheckUtils]: 79: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:52:41,111 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:52:41,111 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-28 10:52:41,111 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-28 10:52:41,111 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 10:52:41,111 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:53:19,544 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-28 10:53:19,545 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-28 10:53:19,545 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:53:19,546 INFO L272 TraceCheckUtils]: 79: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:53:19,546 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:53:19,546 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,547 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,547 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,547 INFO L272 TraceCheckUtils]: 74: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,547 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:53:19,547 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,548 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,548 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,548 INFO L272 TraceCheckUtils]: 69: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,548 INFO L290 TraceCheckUtils]: 68: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:53:19,548 INFO L290 TraceCheckUtils]: 67: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 10:53:19,549 INFO L290 TraceCheckUtils]: 66: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 10:53:19,551 INFO L290 TraceCheckUtils]: 65: Hoare triple {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 10:53:19,551 INFO L290 TraceCheckUtils]: 64: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !(~c~0 >= 2 * ~v~0); {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} is VALID [2022-04-28 10:53:19,552 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #101#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,552 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,552 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,552 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,552 INFO L272 TraceCheckUtils]: 59: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,552 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #99#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,553 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,553 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,553 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,553 INFO L272 TraceCheckUtils]: 54: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,553 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #97#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,554 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,554 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,554 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,554 INFO L272 TraceCheckUtils]: 49: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,554 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #95#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,554 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,555 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,555 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,555 INFO L272 TraceCheckUtils]: 44: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,555 INFO L290 TraceCheckUtils]: 43: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !false; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,557 INFO L290 TraceCheckUtils]: 42: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 10:53:19,558 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #101#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,558 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,558 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,558 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,558 INFO L272 TraceCheckUtils]: 37: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,559 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #99#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,559 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,559 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,559 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,559 INFO L272 TraceCheckUtils]: 32: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,560 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #97#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,560 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,560 INFO L272 TraceCheckUtils]: 27: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,560 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #95#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,561 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,561 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,561 INFO L272 TraceCheckUtils]: 22: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,561 INFO L290 TraceCheckUtils]: 21: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !false; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,563 INFO L290 TraceCheckUtils]: 20: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 10:53:19,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !false; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 10:53:19,564 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#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; {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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); {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-28 10:53:19,565 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 10:53:19,565 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:53:19,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1929231747] [2022-04-28 10:53:19,566 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:53:19,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2002358614] [2022-04-28 10:53:19,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2002358614] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:53:19,566 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:53:19,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-28 10:53:19,566 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:53:19,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [277963945] [2022-04-28 10:53:19,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [277963945] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:53:19,566 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:53:19,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 10:53:19,566 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [758646094] [2022-04-28 10:53:19,566 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:53:19,567 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 10:53:19,567 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:53:19,567 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 10:53:19,620 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 10:53:19,620 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 10:53:19,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:53:19,621 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 10:53:19,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2022-04-28 10:53:19,621 INFO L87 Difference]: Start difference. First operand 387 states and 535 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 10:53:21,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:53:21,951 INFO L93 Difference]: Finished difference Result 540 states and 774 transitions. [2022-04-28 10:53:21,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 10:53:21,952 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 10:53:21,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:53:21,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 10:53:21,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-28 10:53:21,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 10:53:21,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-28 10:53:21,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 100 transitions. [2022-04-28 10:53:22,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:53:22,055 INFO L225 Difference]: With dead ends: 540 [2022-04-28 10:53:22,056 INFO L226 Difference]: Without dead ends: 538 [2022-04-28 10:53:22,056 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=69, Invalid=203, Unknown=0, NotChecked=0, Total=272 [2022-04-28 10:53:22,057 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 20 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 244 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 10:53:22,057 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 244 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 10:53:22,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states. [2022-04-28 10:53:23,385 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 520. [2022-04-28 10:53:23,385 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:53:23,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 10:53:23,386 INFO L74 IsIncluded]: Start isIncluded. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 10:53:23,387 INFO L87 Difference]: Start difference. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 10:53:23,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:53:23,399 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-28 10:53:23,399 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-28 10:53:23,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:53:23,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:53:23,401 INFO L74 IsIncluded]: Start isIncluded. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-28 10:53:23,402 INFO L87 Difference]: Start difference. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-28 10:53:23,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:53:23,414 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-28 10:53:23,414 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-28 10:53:23,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:53:23,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:53:23,415 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:53:23,415 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:53:23,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 10:53:23,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 520 states to 520 states and 754 transitions. [2022-04-28 10:53:23,431 INFO L78 Accepts]: Start accepts. Automaton has 520 states and 754 transitions. Word has length 83 [2022-04-28 10:53:23,431 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:53:23,431 INFO L495 AbstractCegarLoop]: Abstraction has 520 states and 754 transitions. [2022-04-28 10:53:23,431 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 10:53:23,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 520 states and 754 transitions. [2022-04-28 10:53:25,219 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 754 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:53:25,219 INFO L276 IsEmpty]: Start isEmpty. Operand 520 states and 754 transitions. [2022-04-28 10:53:25,223 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 10:53:25,223 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:53:25,223 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 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 10:53:25,241 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 10:53:25,441 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 10:53:25,441 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:53:25,442 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:53:25,442 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 7 times [2022-04-28 10:53:25,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:53:25,442 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1831382716] [2022-04-28 10:53:25,442 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:53:25,442 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 8 times [2022-04-28 10:53:25,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:53:25,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966066247] [2022-04-28 10:53:25,443 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:53:25,443 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:53:25,451 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:53:25,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1639297108] [2022-04-28 10:53:25,452 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:53:25,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:53:25,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:53:25,453 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 10:53:25,453 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 10:53:25,508 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:53:25,508 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:53:25,509 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 98 conjunts are in the unsatisfiable core [2022-04-28 10:53:25,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:53:25,525 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:53:35,907 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:55:25,270 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:55:31,332 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:55:34,898 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-28 10:55:34,898 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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); {28501#true} is VALID [2022-04-28 10:55:34,898 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#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; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:55:34,899 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:55:34,900 INFO L290 TraceCheckUtils]: 13: Hoare triple {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:55:34,900 INFO L290 TraceCheckUtils]: 14: Hoare triple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:55:34,900 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} {28501#true} #93#return; {28553#(<= 1 main_~y~0)} is VALID [2022-04-28 10:55:34,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {28553#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,902 INFO L290 TraceCheckUtils]: 18: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= 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; {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,902 INFO L290 TraceCheckUtils]: 19: Hoare triple {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28564#(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) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {28564#(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) (<= 1 main_~y~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; {28571#(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_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,903 INFO L290 TraceCheckUtils]: 21: Hoare triple {28571#(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_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28571#(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_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,903 INFO L272 TraceCheckUtils]: 22: Hoare triple {28571#(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_~q~0 0) (<= 1 main_~y~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)); {28501#true} is VALID [2022-04-28 10:55:34,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:55:34,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:34,904 INFO L290 TraceCheckUtils]: 25: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:34,905 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28571#(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_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,905 INFO L272 TraceCheckUtils]: 27: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-28 10:55:34,905 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:55:34,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:34,907 INFO L290 TraceCheckUtils]: 30: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:34,907 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,907 INFO L272 TraceCheckUtils]: 32: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-28 10:55:34,907 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:34,907 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:34,908 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:34,908 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,908 INFO L272 TraceCheckUtils]: 37: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {28501#true} is VALID [2022-04-28 10:55:34,908 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:34,908 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:34,908 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:34,909 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,910 INFO L290 TraceCheckUtils]: 42: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,910 INFO L290 TraceCheckUtils]: 43: Hoare triple {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,911 INFO L290 TraceCheckUtils]: 44: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !false; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:55:34,911 INFO L290 TraceCheckUtils]: 45: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 10:55:35,356 INFO L290 TraceCheckUtils]: 46: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~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; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,357 INFO L290 TraceCheckUtils]: 47: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= 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; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,359 INFO L290 TraceCheckUtils]: 49: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,360 INFO L290 TraceCheckUtils]: 50: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= 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; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,361 INFO L290 TraceCheckUtils]: 51: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 10:55:35,361 INFO L272 TraceCheckUtils]: 52: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= 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)); {28501#true} is VALID [2022-04-28 10:55:35,361 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:55:35,362 INFO L290 TraceCheckUtils]: 54: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:35,362 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:35,364 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,364 INFO L272 TraceCheckUtils]: 57: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~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)); {28501#true} is VALID [2022-04-28 10:55:35,364 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:35,364 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:35,364 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:35,365 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,365 INFO L272 TraceCheckUtils]: 62: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~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)); {28501#true} is VALID [2022-04-28 10:55:35,365 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:35,365 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:35,365 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:35,365 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,366 INFO L272 TraceCheckUtils]: 67: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~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)); {28501#true} is VALID [2022-04-28 10:55:35,366 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:55:35,366 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:55:35,366 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:55:35,366 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,369 INFO L290 TraceCheckUtils]: 72: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~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 10:55:35,371 INFO L290 TraceCheckUtils]: 73: Hoare triple {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~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; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,371 INFO L290 TraceCheckUtils]: 74: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:35,372 INFO L290 TraceCheckUtils]: 75: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:55:37,374 WARN L290 TraceCheckUtils]: 76: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= 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; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is UNKNOWN [2022-04-28 10:55:37,375 INFO L290 TraceCheckUtils]: 77: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:37,376 INFO L290 TraceCheckUtils]: 78: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:37,376 INFO L290 TraceCheckUtils]: 79: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:37,377 INFO L290 TraceCheckUtils]: 80: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:37,378 INFO L290 TraceCheckUtils]: 81: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 10:55:37,378 INFO L272 TraceCheckUtils]: 82: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:55:37,378 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:55:37,379 INFO L290 TraceCheckUtils]: 84: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:37,379 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:55:37,400 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #95#return; {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} is VALID [2022-04-28 10:55:37,400 INFO L272 TraceCheckUtils]: 87: Hoare triple {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:55:37,401 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:55:37,401 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-28 10:55:37,401 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-28 10:55:37,402 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 38 proven. 83 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 10:55:37,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:56:27,987 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-28 10:56:27,987 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-28 10:56:27,987 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:56:27,988 INFO L272 TraceCheckUtils]: 87: Hoare triple {28806#(= 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)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:56:27,989 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28810#(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)))))} #95#return; {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:56:27,989 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:56:27,989 INFO L290 TraceCheckUtils]: 84: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:56:27,989 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:56:27,990 INFO L272 TraceCheckUtils]: 82: Hoare triple {28810#(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)); {28501#true} is VALID [2022-04-28 10:56:27,990 INFO L290 TraceCheckUtils]: 81: Hoare triple {28810#(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 !false; {28810#(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 10:56:27,990 INFO L290 TraceCheckUtils]: 80: Hoare triple {28810#(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; {28810#(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 10:56:27,991 INFO L290 TraceCheckUtils]: 79: Hoare triple {28810#(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 !false; {28810#(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 10:56:27,991 INFO L290 TraceCheckUtils]: 78: Hoare triple {28810#(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; {28810#(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 10:56:27,991 INFO L290 TraceCheckUtils]: 77: Hoare triple {28810#(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 !false; {28810#(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 10:56:28,008 INFO L290 TraceCheckUtils]: 76: Hoare triple {28842#(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; {28810#(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 10:56:28,009 INFO L290 TraceCheckUtils]: 75: Hoare triple {28842#(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); {28842#(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 10:56:28,009 INFO L290 TraceCheckUtils]: 74: Hoare triple {28842#(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 !false; {28842#(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 10:56:28,014 INFO L290 TraceCheckUtils]: 73: Hoare triple {28852#(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; {28842#(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 10:56:28,014 INFO L290 TraceCheckUtils]: 72: Hoare triple {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {28852#(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 10:56:28,015 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:56:28,015 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,015 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,015 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,015 INFO L272 TraceCheckUtils]: 67: Hoare triple {28856#(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))) (<= (* main_~v~0 2) main_~c~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)); {28501#true} is VALID [2022-04-28 10:56:28,016 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:56:28,016 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,016 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,016 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,016 INFO L272 TraceCheckUtils]: 62: Hoare triple {28856#(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))) (<= (* main_~v~0 2) main_~c~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)); {28501#true} is VALID [2022-04-28 10:56:28,017 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:56:28,017 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,017 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,017 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,017 INFO L272 TraceCheckUtils]: 57: Hoare triple {28856#(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))) (<= (* main_~v~0 2) main_~c~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)); {28501#true} is VALID [2022-04-28 10:56:28,018 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28905#(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))) (<= (* main_~v~0 2) 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)))))} #95#return; {28856#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:56:28,018 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:56:28,019 INFO L290 TraceCheckUtils]: 54: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:56:28,019 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:56:28,019 INFO L272 TraceCheckUtils]: 52: Hoare triple {28905#(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))) (<= (* main_~v~0 2) 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)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,020 INFO L290 TraceCheckUtils]: 51: Hoare triple {28905#(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))) (<= (* main_~v~0 2) 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)))))} assume !false; {28905#(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))) (<= (* main_~v~0 2) 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)))))} is VALID [2022-04-28 10:56:28,020 INFO L290 TraceCheckUtils]: 50: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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; {28905#(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))) (<= (* main_~v~0 2) 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)))))} is VALID [2022-04-28 10:56:28,021 INFO L290 TraceCheckUtils]: 49: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 !false; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 10:56:28,022 INFO L290 TraceCheckUtils]: 48: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 10:56:28,022 INFO L290 TraceCheckUtils]: 47: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 10:56:28,022 INFO L290 TraceCheckUtils]: 46: Hoare triple {28501#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; {28501#true} is VALID [2022-04-28 10:56:28,022 INFO L290 TraceCheckUtils]: 45: Hoare triple {28501#true} assume !(~c~0 >= ~b~0); {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 44: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 43: Hoare triple {28501#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 42: Hoare triple {28501#true} assume !(~c~0 >= 2 * ~v~0); {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28501#true} #101#return; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L272 TraceCheckUtils]: 37: Hoare triple {28501#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28501#true} #99#return; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,023 INFO L272 TraceCheckUtils]: 32: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28501#true} {28501#true} #97#return; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 30: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 29: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L272 TraceCheckUtils]: 27: Hoare triple {28501#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28501#true} {28501#true} #95#return; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 25: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 24: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L272 TraceCheckUtils]: 22: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 21: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {28501#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 10:56:28,024 INFO L290 TraceCheckUtils]: 18: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 17: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 16: Hoare triple {28501#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28501#true} {28501#true} #93#return; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#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; {28501#true} is VALID [2022-04-28 10:56:28,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-28 10:56:28,026 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-28 10:56:28,026 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 10:56:28,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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); {28501#true} is VALID [2022-04-28 10:56:28,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-28 10:56:28,026 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2022-04-28 10:56:28,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:56:28,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [966066247] [2022-04-28 10:56:28,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:56:28,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1639297108] [2022-04-28 10:56:28,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1639297108] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:56:28,027 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:56:28,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 13] total 31 [2022-04-28 10:56:28,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:56:28,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1831382716] [2022-04-28 10:56:28,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1831382716] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:56:28,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:56:28,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 10:56:28,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [419574400] [2022-04-28 10:56:28,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:56:28,028 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-28 10:56:28,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:56:28,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 10:56:32,787 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 69 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 10:56:32,787 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 10:56:32,787 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:56:32,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 10:56:32,788 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=796, Unknown=0, NotChecked=0, Total=930 [2022-04-28 10:56:32,788 INFO L87 Difference]: Start difference. First operand 520 states and 754 transitions. Second operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 10:56:48,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:56:48,854 INFO L93 Difference]: Finished difference Result 606 states and 880 transitions. [2022-04-28 10:56:48,854 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 10:56:48,854 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-28 10:56:48,854 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:56:48,854 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 10:56:48,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-28 10:56:48,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 10:56:48,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-28 10:56:48,857 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 135 transitions. [2022-04-28 10:56:51,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 134 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 10:56:51,392 INFO L225 Difference]: With dead ends: 606 [2022-04-28 10:56:51,392 INFO L226 Difference]: Without dead ends: 604 [2022-04-28 10:56:51,392 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 5.1s TimeCoverageRelationStatistics Valid=177, Invalid=1155, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 10:56:51,393 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 69 mSDsluCounter, 390 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 433 SdHoareTripleChecker+Invalid, 1127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 412 IncrementalHoareTripleChecker+Unchecked, 5.8s IncrementalHoareTripleChecker+Time [2022-04-28 10:56:51,393 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 433 Invalid, 1127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 679 Invalid, 0 Unknown, 412 Unchecked, 5.8s Time] [2022-04-28 10:56:51,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 604 states. [2022-04-28 10:56:52,962 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 604 to 595. [2022-04-28 10:56:52,962 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:56:52,963 INFO L82 GeneralOperation]: Start isEquivalent. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 10:56:52,963 INFO L74 IsIncluded]: Start isIncluded. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 10:56:52,964 INFO L87 Difference]: Start difference. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 10:56:52,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:56:52,978 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-28 10:56:52,978 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-28 10:56:52,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:56:52,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:56:52,981 INFO L74 IsIncluded]: Start isIncluded. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-28 10:56:52,981 INFO L87 Difference]: Start difference. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-28 10:56:52,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:56:52,996 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-28 10:56:52,996 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-28 10:56:52,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:56:52,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:56:52,997 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:56:52,997 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:56:52,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 10:56:53,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 595 states to 595 states and 869 transitions. [2022-04-28 10:56:53,017 INFO L78 Accepts]: Start accepts. Automaton has 595 states and 869 transitions. Word has length 91 [2022-04-28 10:56:53,017 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:56:53,017 INFO L495 AbstractCegarLoop]: Abstraction has 595 states and 869 transitions. [2022-04-28 10:56:53,018 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 10:56:53,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 595 states and 869 transitions. [2022-04-28 10:56:55,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 869 edges. 869 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:56:55,359 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 869 transitions. [2022-04-28 10:56:55,359 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 10:56:55,359 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:56:55,360 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 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] [2022-04-28 10:56:55,376 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 10:56:55,560 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 10:56:55,560 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:56:55,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:56:55,561 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 5 times [2022-04-28 10:56:55,561 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:56:55,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [369509389] [2022-04-28 10:56:55,561 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:56:55,561 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 6 times [2022-04-28 10:56:55,561 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:56:55,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [534852772] [2022-04-28 10:56:55,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:56:55,561 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:56:55,569 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:56:55,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1944779395] [2022-04-28 10:56:55,569 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 10:56:55,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:56:55,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:56:55,570 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 10:56:55,571 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 10:56:55,623 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 10:56:55,623 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:56:55,624 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 10:56:55,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:56:55,639 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:57:17,794 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:57:27,815 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:57:27,922 INFO L272 TraceCheckUtils]: 0: Hoare triple {32699#true} call ULTIMATE.init(); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {32699#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); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32699#true} {32699#true} #105#return; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L272 TraceCheckUtils]: 4: Hoare triple {32699#true} call #t~ret6 := main(); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {32699#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; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L272 TraceCheckUtils]: 6: Hoare triple {32699#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 7: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 8: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32699#true} {32699#true} #91#return; {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L272 TraceCheckUtils]: 11: Hoare triple {32699#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-28 10:57:27,923 INFO L290 TraceCheckUtils]: 12: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,924 INFO L290 TraceCheckUtils]: 13: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,924 INFO L290 TraceCheckUtils]: 14: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,924 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32699#true} {32699#true} #93#return; {32699#true} is VALID [2022-04-28 10:57:27,924 INFO L290 TraceCheckUtils]: 16: Hoare triple {32699#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {32752#(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 10:57:27,924 INFO L290 TraceCheckUtils]: 17: Hoare triple {32752#(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 !false; {32752#(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 10:57:27,925 INFO L290 TraceCheckUtils]: 18: Hoare triple {32752#(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; {32759#(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 10:57:27,925 INFO L290 TraceCheckUtils]: 19: Hoare triple {32759#(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 !false; {32759#(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 10:57:27,925 INFO L290 TraceCheckUtils]: 20: Hoare triple {32759#(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; {32759#(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 10:57:27,926 INFO L290 TraceCheckUtils]: 21: Hoare triple {32759#(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 !false; {32759#(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 10:57:27,926 INFO L272 TraceCheckUtils]: 22: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,926 INFO L290 TraceCheckUtils]: 23: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,926 INFO L290 TraceCheckUtils]: 24: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,926 INFO L290 TraceCheckUtils]: 25: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,927 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32699#true} {32759#(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))} #95#return; {32759#(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 10:57:27,927 INFO L272 TraceCheckUtils]: 27: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,927 INFO L290 TraceCheckUtils]: 28: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:27,927 INFO L290 TraceCheckUtils]: 29: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:27,934 INFO L290 TraceCheckUtils]: 30: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:27,936 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(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))} #97#return; {32759#(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 10:57:27,936 INFO L272 TraceCheckUtils]: 32: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,936 INFO L290 TraceCheckUtils]: 33: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,936 INFO L290 TraceCheckUtils]: 34: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,936 INFO L290 TraceCheckUtils]: 35: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,936 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32699#true} {32759#(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))} #99#return; {32759#(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 10:57:27,937 INFO L272 TraceCheckUtils]: 37: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,937 INFO L290 TraceCheckUtils]: 38: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,937 INFO L290 TraceCheckUtils]: 39: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,937 INFO L290 TraceCheckUtils]: 40: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,937 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32699#true} {32759#(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))} #101#return; {32759#(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 10:57:27,938 INFO L290 TraceCheckUtils]: 42: Hoare triple {32759#(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; {32759#(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 10:57:27,938 INFO L290 TraceCheckUtils]: 43: Hoare triple {32759#(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 !false; {32759#(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 10:57:27,938 INFO L272 TraceCheckUtils]: 44: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,938 INFO L290 TraceCheckUtils]: 45: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,938 INFO L290 TraceCheckUtils]: 46: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,938 INFO L290 TraceCheckUtils]: 47: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,939 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {32699#true} {32759#(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))} #95#return; {32759#(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 10:57:27,939 INFO L272 TraceCheckUtils]: 49: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,939 INFO L290 TraceCheckUtils]: 50: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,939 INFO L290 TraceCheckUtils]: 51: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,939 INFO L290 TraceCheckUtils]: 52: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,940 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {32699#true} {32759#(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))} #97#return; {32759#(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 10:57:27,940 INFO L272 TraceCheckUtils]: 54: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,940 INFO L290 TraceCheckUtils]: 55: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,940 INFO L290 TraceCheckUtils]: 56: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,940 INFO L290 TraceCheckUtils]: 57: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,947 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {32699#true} {32759#(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))} #99#return; {32759#(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 10:57:27,947 INFO L272 TraceCheckUtils]: 59: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,947 INFO L290 TraceCheckUtils]: 60: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,947 INFO L290 TraceCheckUtils]: 61: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,948 INFO L290 TraceCheckUtils]: 62: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,948 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32699#true} {32759#(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))} #101#return; {32759#(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 10:57:27,949 INFO L290 TraceCheckUtils]: 64: Hoare triple {32759#(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; {32759#(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 10:57:27,949 INFO L290 TraceCheckUtils]: 65: Hoare triple {32759#(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 !false; {32759#(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 10:57:27,949 INFO L272 TraceCheckUtils]: 66: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,949 INFO L290 TraceCheckUtils]: 67: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,949 INFO L290 TraceCheckUtils]: 68: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,949 INFO L290 TraceCheckUtils]: 69: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,950 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {32699#true} {32759#(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))} #95#return; {32759#(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 10:57:27,950 INFO L272 TraceCheckUtils]: 71: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,950 INFO L290 TraceCheckUtils]: 72: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,950 INFO L290 TraceCheckUtils]: 73: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,950 INFO L290 TraceCheckUtils]: 74: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,951 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {32699#true} {32759#(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))} #97#return; {32759#(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 10:57:27,951 INFO L272 TraceCheckUtils]: 76: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,951 INFO L290 TraceCheckUtils]: 77: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 10:57:27,951 INFO L290 TraceCheckUtils]: 78: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 10:57:27,951 INFO L290 TraceCheckUtils]: 79: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 10:57:27,952 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {32699#true} {32759#(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))} #99#return; {32759#(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 10:57:27,952 INFO L272 TraceCheckUtils]: 81: Hoare triple {32759#(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)); {32699#true} is VALID [2022-04-28 10:57:27,952 INFO L290 TraceCheckUtils]: 82: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:27,952 INFO L290 TraceCheckUtils]: 83: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:27,952 INFO L290 TraceCheckUtils]: 84: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:27,953 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(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))} #101#return; {32963#(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 10:57:27,954 INFO L290 TraceCheckUtils]: 86: Hoare triple {32963#(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); {32963#(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 10:57:27,956 INFO L290 TraceCheckUtils]: 87: Hoare triple {32963#(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; {32970#(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 10:57:27,957 INFO L290 TraceCheckUtils]: 88: Hoare triple {32970#(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 !false; {32970#(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 10:57:27,957 INFO L290 TraceCheckUtils]: 89: Hoare triple {32970#(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); {32970#(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 10:57:27,958 INFO L290 TraceCheckUtils]: 90: Hoare triple {32970#(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; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-28 10:57:27,958 INFO L290 TraceCheckUtils]: 91: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !false; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-28 10:57:27,959 INFO L290 TraceCheckUtils]: 92: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !(0 != ~b~0); {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} is VALID [2022-04-28 10:57:27,959 INFO L272 TraceCheckUtils]: 93: Hoare triple {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~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)); {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:57:27,960 INFO L290 TraceCheckUtils]: 94: Hoare triple {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {32995#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:27,960 INFO L290 TraceCheckUtils]: 95: Hoare triple {32995#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {32700#false} is VALID [2022-04-28 10:57:27,960 INFO L290 TraceCheckUtils]: 96: Hoare triple {32700#false} assume !false; {32700#false} is VALID [2022-04-28 10:57:27,960 INFO L134 CoverageAnalysis]: Checked inductivity of 314 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-28 10:57:27,960 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:57:46,660 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:57:47,154 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:57:47,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [534852772] [2022-04-28 10:57:47,155 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:57:47,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1944779395] [2022-04-28 10:57:47,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1944779395] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 10:57:47,155 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 10:57:47,155 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 10:57:47,155 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:57:47,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [369509389] [2022-04-28 10:57:47,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [369509389] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:57:47,155 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:57:47,155 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 10:57:47,155 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1599579386] [2022-04-28 10:57:47,155 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:57:47,156 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 97 [2022-04-28 10:57:47,156 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:57:47,156 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 10:57:47,202 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 10:57:47,202 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 10:57:47,202 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:57:47,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 10:57:47,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 10:57:47,203 INFO L87 Difference]: Start difference. First operand 595 states and 869 transitions. Second operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 10:57:50,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:57:50,425 INFO L93 Difference]: Finished difference Result 686 states and 997 transitions. [2022-04-28 10:57:50,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 10:57:50,425 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 97 [2022-04-28 10:57:50,425 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:57:50,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 10:57:50,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-28 10:57:50,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 10:57:50,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-28 10:57:50,427 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 109 transitions. [2022-04-28 10:57:50,566 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 10:57:50,586 INFO L225 Difference]: With dead ends: 686 [2022-04-28 10:57:50,587 INFO L226 Difference]: Without dead ends: 683 [2022-04-28 10:57:50,587 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 10:57:50,589 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 43 mSDsluCounter, 211 mSDsCounter, 0 mSdLazyCounter, 453 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 488 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 453 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 10:57:50,589 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 247 Invalid, 488 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 453 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 10:57:50,593 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 683 states. [2022-04-28 10:57:52,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 683 to 675. [2022-04-28 10:57:52,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:57:52,357 INFO L82 GeneralOperation]: Start isEquivalent. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 10:57:52,358 INFO L74 IsIncluded]: Start isIncluded. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 10:57:52,359 INFO L87 Difference]: Start difference. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 10:57:52,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:57:52,377 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-28 10:57:52,377 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-28 10:57:52,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:57:52,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:57:52,379 INFO L74 IsIncluded]: Start isIncluded. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-28 10:57:52,380 INFO L87 Difference]: Start difference. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-28 10:57:52,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:57:52,398 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-28 10:57:52,398 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-28 10:57:52,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:57:52,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:57:52,411 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:57:52,411 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:57:52,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 10:57:52,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 675 states to 675 states and 985 transitions. [2022-04-28 10:57:52,433 INFO L78 Accepts]: Start accepts. Automaton has 675 states and 985 transitions. Word has length 97 [2022-04-28 10:57:52,433 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:57:52,433 INFO L495 AbstractCegarLoop]: Abstraction has 675 states and 985 transitions. [2022-04-28 10:57:52,433 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 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 10:57:52,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 675 states and 985 transitions. [2022-04-28 10:57:55,098 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 985 edges. 985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:57:55,098 INFO L276 IsEmpty]: Start isEmpty. Operand 675 states and 985 transitions. [2022-04-28 10:57:55,099 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-04-28 10:57:55,099 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:57:55,099 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 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 10:57:55,115 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 10:57:55,299 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 10:57:55,300 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:57:55,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:57:55,300 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 9 times [2022-04-28 10:57:55,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:57:55,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1606697050] [2022-04-28 10:57:55,301 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:57:55,301 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 10 times [2022-04-28 10:57:55,301 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:57:55,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1445343064] [2022-04-28 10:57:55,301 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:57:55,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:57:55,310 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:57:55,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1095083533] [2022-04-28 10:57:55,310 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 10:57:55,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:57:55,310 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:57:55,311 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 10:57:55,311 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 10:57:55,365 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 10:57:55,365 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:57:55,367 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 10:57:55,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:57:55,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:57:58,320 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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); {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#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; {37142#true} is VALID [2022-04-28 10:57:58,320 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,321 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 10:57:58,321 INFO L290 TraceCheckUtils]: 8: Hoare triple {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:57:58,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 10:57:58,322 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} {37142#true} #91#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-28 10:57:58,322 INFO L272 TraceCheckUtils]: 11: Hoare triple {37179#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,322 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,322 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,322 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37179#(<= 1 main_~x~0)} #93#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-28 10:57:58,323 INFO L290 TraceCheckUtils]: 16: Hoare triple {37179#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37198#(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) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,323 INFO L290 TraceCheckUtils]: 17: Hoare triple {37198#(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) (= main_~p~0 1))} assume !false; {37198#(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) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,323 INFO L290 TraceCheckUtils]: 18: Hoare triple {37198#(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) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37205#(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) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,324 INFO L290 TraceCheckUtils]: 19: Hoare triple {37205#(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) (= main_~p~0 1))} assume !false; {37205#(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) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,324 INFO L290 TraceCheckUtils]: 20: Hoare triple {37205#(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) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37205#(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) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {37205#(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) (= 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; {37215#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,325 INFO L290 TraceCheckUtils]: 22: Hoare triple {37215#(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) (= main_~q~0 1))} assume !false; {37215#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,325 INFO L290 TraceCheckUtils]: 23: Hoare triple {37215#(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) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37222#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,326 INFO L290 TraceCheckUtils]: 24: Hoare triple {37222#(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) (= main_~q~0 1))} assume !false; {37222#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,326 INFO L290 TraceCheckUtils]: 25: Hoare triple {37222#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37229#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,326 INFO L290 TraceCheckUtils]: 26: Hoare triple {37229#(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) (= main_~q~0 1))} assume !false; {37229#(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) (= main_~q~0 1))} is VALID [2022-04-28 10:57:58,327 INFO L272 TraceCheckUtils]: 27: Hoare triple {37229#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,327 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:58,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,327 INFO L290 TraceCheckUtils]: 30: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,328 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37229#(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) (= main_~q~0 1))} #95#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 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 10:57:58,328 INFO L272 TraceCheckUtils]: 32: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 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)); {37142#true} is VALID [2022-04-28 10:57:58,328 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,328 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,329 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,329 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 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 10:57:58,329 INFO L272 TraceCheckUtils]: 37: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= 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)); {37142#true} is VALID [2022-04-28 10:57:58,329 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,329 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,329 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,330 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 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 10:57:58,330 INFO L272 TraceCheckUtils]: 42: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= 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)); {37142#true} is VALID [2022-04-28 10:57:58,330 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,330 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,330 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,331 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 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 10:57:58,332 INFO L290 TraceCheckUtils]: 47: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (= 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); {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (not (<= (* main_~v~0 2) main_~c~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 10:57:58,332 INFO L290 TraceCheckUtils]: 48: Hoare triple {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 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 1) (not (<= (* main_~v~0 2) main_~c~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; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:57:58,333 INFO L290 TraceCheckUtils]: 49: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:57:58,333 INFO L290 TraceCheckUtils]: 50: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 10:57:58,335 INFO L290 TraceCheckUtils]: 51: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= 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; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,335 INFO L290 TraceCheckUtils]: 52: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,336 INFO L290 TraceCheckUtils]: 53: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,337 INFO L290 TraceCheckUtils]: 54: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,337 INFO L290 TraceCheckUtils]: 55: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,338 INFO L290 TraceCheckUtils]: 56: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} assume !false; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,338 INFO L272 TraceCheckUtils]: 57: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,338 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:58,338 INFO L290 TraceCheckUtils]: 59: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,339 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,340 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} #95#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,340 INFO L272 TraceCheckUtils]: 62: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~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)); {37142#true} is VALID [2022-04-28 10:57:58,340 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,340 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,340 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,341 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #97#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,341 INFO L272 TraceCheckUtils]: 67: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,341 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,341 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,341 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,342 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #99#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,342 INFO L272 TraceCheckUtils]: 72: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,342 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:57:58,342 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:57:58,342 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:57:58,343 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #101#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,344 INFO L290 TraceCheckUtils]: 77: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,344 INFO L290 TraceCheckUtils]: 78: Hoare triple {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,345 INFO L290 TraceCheckUtils]: 79: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !false; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,345 INFO L290 TraceCheckUtils]: 80: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:57:58,348 INFO L290 TraceCheckUtils]: 81: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~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; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,348 INFO L290 TraceCheckUtils]: 82: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,349 INFO L290 TraceCheckUtils]: 83: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,349 INFO L290 TraceCheckUtils]: 84: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,350 INFO L290 TraceCheckUtils]: 85: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,350 INFO L290 TraceCheckUtils]: 86: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 10:57:58,350 INFO L272 TraceCheckUtils]: 87: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:57:58,351 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:58,351 INFO L290 TraceCheckUtils]: 89: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,351 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:57:58,353 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} #95#return; {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 10:57:58,354 INFO L272 TraceCheckUtils]: 92: Hoare triple {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~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)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:57:58,354 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:57:58,354 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-28 10:57:58,354 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-28 10:57:58,355 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 42 proven. 91 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-28 10:57:58,355 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 10:58:41,018 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-28 10:58:41,019 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-28 10:58:41,019 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:58:41,020 INFO L272 TraceCheckUtils]: 92: Hoare triple {37464#(= 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)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:58:41,020 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37468#(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)))))} #95#return; {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 10:58:41,021 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:58:41,021 INFO L290 TraceCheckUtils]: 89: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:58:41,021 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:58:41,021 INFO L272 TraceCheckUtils]: 87: Hoare triple {37468#(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)); {37142#true} is VALID [2022-04-28 10:58:41,022 INFO L290 TraceCheckUtils]: 86: Hoare triple {37468#(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 !false; {37468#(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 10:58:41,022 INFO L290 TraceCheckUtils]: 85: Hoare triple {37468#(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; {37468#(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 10:58:41,023 INFO L290 TraceCheckUtils]: 84: Hoare triple {37468#(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 !false; {37468#(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 10:58:41,023 INFO L290 TraceCheckUtils]: 83: Hoare triple {37468#(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; {37468#(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 10:58:41,023 INFO L290 TraceCheckUtils]: 82: Hoare triple {37468#(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 !false; {37468#(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 10:58:41,045 INFO L290 TraceCheckUtils]: 81: Hoare triple {37500#(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; {37468#(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 10:58:41,046 INFO L290 TraceCheckUtils]: 80: Hoare triple {37500#(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); {37500#(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 10:58:41,046 INFO L290 TraceCheckUtils]: 79: Hoare triple {37500#(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 !false; {37500#(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 10:58:41,051 INFO L290 TraceCheckUtils]: 78: Hoare triple {37510#(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; {37500#(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 10:58:41,052 INFO L290 TraceCheckUtils]: 77: Hoare triple {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {37510#(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 10:58:41,053 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:58:41,053 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,053 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,053 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,053 INFO L272 TraceCheckUtils]: 72: Hoare triple {37514#(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))) (<= (* main_~v~0 2) main_~c~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)); {37142#true} is VALID [2022-04-28 10:58:41,054 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:58:41,054 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,054 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,054 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,054 INFO L272 TraceCheckUtils]: 67: Hoare triple {37514#(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))) (<= (* main_~v~0 2) main_~c~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)); {37142#true} is VALID [2022-04-28 10:58:41,055 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:58:41,055 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,055 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,055 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,055 INFO L272 TraceCheckUtils]: 62: Hoare triple {37514#(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))) (<= (* main_~v~0 2) main_~c~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)); {37142#true} is VALID [2022-04-28 10:58:41,056 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37563#(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))) (<= (* main_~v~0 2) 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)))))} #95#return; {37514#(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))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 10:58:41,056 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:58:41,057 INFO L290 TraceCheckUtils]: 59: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:58:41,057 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 10:58:41,057 INFO L272 TraceCheckUtils]: 57: Hoare triple {37563#(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))) (<= (* main_~v~0 2) 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)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,058 INFO L290 TraceCheckUtils]: 56: Hoare triple {37563#(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))) (<= (* main_~v~0 2) 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)))))} assume !false; {37563#(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))) (<= (* main_~v~0 2) 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)))))} is VALID [2022-04-28 10:58:41,058 INFO L290 TraceCheckUtils]: 55: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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; {37563#(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))) (<= (* main_~v~0 2) 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)))))} is VALID [2022-04-28 10:58:41,059 INFO L290 TraceCheckUtils]: 54: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 !false; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 10:58:41,061 INFO L290 TraceCheckUtils]: 53: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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 10:58:41,061 INFO L290 TraceCheckUtils]: 52: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 51: Hoare triple {37142#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; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 50: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 49: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 48: Hoare triple {37142#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 47: Hoare triple {37142#true} assume !(~c~0 >= 2 * ~v~0); {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37142#true} #101#return; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,061 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L272 TraceCheckUtils]: 42: Hoare triple {37142#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37142#true} #99#return; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L272 TraceCheckUtils]: 37: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37142#true} #97#return; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L272 TraceCheckUtils]: 32: Hoare triple {37142#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37142#true} {37142#true} #95#return; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 30: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,062 INFO L290 TraceCheckUtils]: 29: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L272 TraceCheckUtils]: 27: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 26: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 25: Hoare triple {37142#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 24: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 23: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 22: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 21: Hoare triple {37142#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; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 20: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {37142#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37142#true} is VALID [2022-04-28 10:58:41,063 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37142#true} #93#return; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L272 TraceCheckUtils]: 11: Hoare triple {37142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37142#true} {37142#true} #91#return; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 9: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#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; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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); {37142#true} is VALID [2022-04-28 10:58:41,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-28 10:58:41,065 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-28 10:58:41,065 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 10:58:41,065 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1445343064] [2022-04-28 10:58:41,065 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 10:58:41,065 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1095083533] [2022-04-28 10:58:41,065 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1095083533] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 10:58:41,065 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 10:58:41,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 13] total 33 [2022-04-28 10:58:41,066 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 10:58:41,066 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1606697050] [2022-04-28 10:58:41,066 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1606697050] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 10:58:41,066 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 10:58:41,066 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 10:58:41,066 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1165420352] [2022-04-28 10:58:41,066 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 10:58:41,066 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-28 10:58:41,066 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 10:58:41,067 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 10:58:41,162 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 10:58:41,162 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 10:58:41,162 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 10:58:41,163 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 10:58:41,163 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=885, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 10:58:41,163 INFO L87 Difference]: Start difference. First operand 675 states and 985 transitions. Second operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 10:58:50,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:58:50,018 INFO L93 Difference]: Finished difference Result 767 states and 1110 transitions. [2022-04-28 10:58:50,018 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 10:58:50,018 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-28 10:58:50,018 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 10:58:50,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 10:58:50,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-28 10:58:50,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 10:58:50,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-28 10:58:50,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 190 transitions. [2022-04-28 10:58:50,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:58:50,314 INFO L225 Difference]: With dead ends: 767 [2022-04-28 10:58:50,314 INFO L226 Difference]: Without dead ends: 765 [2022-04-28 10:58:50,315 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 199 GetRequests, 159 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 424 ImplicationChecksByTransitivity, 1.9s TimeCoverageRelationStatistics Valid=245, Invalid=1395, Unknown=0, NotChecked=0, Total=1640 [2022-04-28 10:58:50,315 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 105 mSDsluCounter, 417 mSDsCounter, 0 mSdLazyCounter, 1605 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 464 SdHoareTripleChecker+Invalid, 1697 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 1605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-28 10:58:50,315 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [141 Valid, 464 Invalid, 1697 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 1605 Invalid, 0 Unknown, 0 Unchecked, 2.8s Time] [2022-04-28 10:58:50,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 765 states. [2022-04-28 10:58:52,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 765 to 747. [2022-04-28 10:58:52,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 10:58:52,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 10:58:52,412 INFO L74 IsIncluded]: Start isIncluded. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 10:58:52,413 INFO L87 Difference]: Start difference. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 10:58:52,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:58:52,434 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-28 10:58:52,434 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-28 10:58:52,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:58:52,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:58:52,437 INFO L74 IsIncluded]: Start isIncluded. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-28 10:58:52,438 INFO L87 Difference]: Start difference. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-28 10:58:52,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 10:58:52,459 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-28 10:58:52,459 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-28 10:58:52,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 10:58:52,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 10:58:52,461 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 10:58:52,461 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 10:58:52,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 10:58:52,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 747 states to 747 states and 1090 transitions. [2022-04-28 10:58:52,490 INFO L78 Accepts]: Start accepts. Automaton has 747 states and 1090 transitions. Word has length 96 [2022-04-28 10:58:52,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 10:58:52,490 INFO L495 AbstractCegarLoop]: Abstraction has 747 states and 1090 transitions. [2022-04-28 10:58:52,490 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 10:58:52,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 747 states and 1090 transitions. [2022-04-28 10:58:55,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1090 edges. 1090 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 10:58:55,712 INFO L276 IsEmpty]: Start isEmpty. Operand 747 states and 1090 transitions. [2022-04-28 10:58:55,713 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-28 10:58:55,713 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 10:58:55,713 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 10:58:55,729 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-28 10:58:55,913 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 10:58:55,913 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 10:58:55,914 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 10:58:55,914 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 7 times [2022-04-28 10:58:55,914 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 10:58:55,914 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1688304670] [2022-04-28 10:58:55,914 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 10:58:55,914 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 8 times [2022-04-28 10:58:55,914 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 10:58:55,914 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [967816180] [2022-04-28 10:58:55,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 10:58:55,915 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 10:58:55,924 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 10:58:55,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1211681085] [2022-04-28 10:58:55,925 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 10:58:55,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 10:58:55,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 10:58:55,926 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 10:58:55,927 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 10:58:55,978 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 10:58:55,979 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 10:58:55,980 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-28 10:58:55,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 10:58:55,999 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 10:59:31,660 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 10:59:32,010 INFO L272 TraceCheckUtils]: 0: Hoare triple {42324#true} call ULTIMATE.init(); {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L290 TraceCheckUtils]: 1: Hoare triple {42324#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); {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42324#true} {42324#true} #105#return; {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L272 TraceCheckUtils]: 4: Hoare triple {42324#true} call #t~ret6 := main(); {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L290 TraceCheckUtils]: 5: Hoare triple {42324#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; {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L272 TraceCheckUtils]: 6: Hoare triple {42324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L290 TraceCheckUtils]: 7: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L290 TraceCheckUtils]: 9: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42324#true} {42324#true} #91#return; {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L272 TraceCheckUtils]: 11: Hoare triple {42324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L290 TraceCheckUtils]: 12: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L290 TraceCheckUtils]: 13: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L290 TraceCheckUtils]: 14: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {42324#true} {42324#true} #93#return; {42324#true} is VALID [2022-04-28 10:59:32,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {42324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {42377#(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 10:59:32,012 INFO L290 TraceCheckUtils]: 17: Hoare triple {42377#(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 !false; {42377#(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 10:59:32,012 INFO L290 TraceCheckUtils]: 18: Hoare triple {42377#(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; {42384#(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 10:59:32,012 INFO L290 TraceCheckUtils]: 19: Hoare triple {42384#(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 !false; {42384#(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 10:59:32,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {42384#(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; {42391#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,013 INFO L290 TraceCheckUtils]: 21: Hoare triple {42391#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42391#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,013 INFO L272 TraceCheckUtils]: 22: Hoare triple {42391#(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_~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)); {42324#true} is VALID [2022-04-28 10:59:32,014 INFO L290 TraceCheckUtils]: 23: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:59:32,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,014 INFO L290 TraceCheckUtils]: 25: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,015 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42391#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,015 INFO L272 TraceCheckUtils]: 27: Hoare triple {42412#(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_~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)); {42324#true} is VALID [2022-04-28 10:59:32,015 INFO L290 TraceCheckUtils]: 28: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,015 INFO L290 TraceCheckUtils]: 29: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,015 INFO L290 TraceCheckUtils]: 30: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,016 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {42324#true} {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,016 INFO L272 TraceCheckUtils]: 32: Hoare triple {42412#(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_~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)); {42324#true} is VALID [2022-04-28 10:59:32,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,016 INFO L290 TraceCheckUtils]: 34: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,016 INFO L290 TraceCheckUtils]: 35: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,017 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {42324#true} {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,017 INFO L272 TraceCheckUtils]: 37: Hoare triple {42412#(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_~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)); {42324#true} is VALID [2022-04-28 10:59:32,017 INFO L290 TraceCheckUtils]: 38: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,017 INFO L290 TraceCheckUtils]: 39: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,017 INFO L290 TraceCheckUtils]: 40: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,018 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {42324#true} {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42412#(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_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,020 INFO L290 TraceCheckUtils]: 42: Hoare triple {42412#(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_~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; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,020 INFO L290 TraceCheckUtils]: 43: Hoare triple {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,020 INFO L272 TraceCheckUtils]: 44: Hoare triple {42461#(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) (= (mod main_~d~0 2) 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)); {42324#true} is VALID [2022-04-28 10:59:32,020 INFO L290 TraceCheckUtils]: 45: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,020 INFO L290 TraceCheckUtils]: 46: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,021 INFO L290 TraceCheckUtils]: 47: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,021 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {42324#true} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,021 INFO L272 TraceCheckUtils]: 49: Hoare triple {42461#(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) (= (mod main_~d~0 2) 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)); {42324#true} is VALID [2022-04-28 10:59:32,022 INFO L290 TraceCheckUtils]: 50: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:59:32,022 INFO L290 TraceCheckUtils]: 51: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,022 INFO L290 TraceCheckUtils]: 52: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,023 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,023 INFO L272 TraceCheckUtils]: 54: Hoare triple {42461#(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) (= (mod main_~d~0 2) 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)); {42324#true} is VALID [2022-04-28 10:59:32,023 INFO L290 TraceCheckUtils]: 55: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,023 INFO L290 TraceCheckUtils]: 56: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,023 INFO L290 TraceCheckUtils]: 57: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,024 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {42324#true} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,024 INFO L272 TraceCheckUtils]: 59: Hoare triple {42461#(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) (= (mod main_~d~0 2) 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)); {42324#true} is VALID [2022-04-28 10:59:32,024 INFO L290 TraceCheckUtils]: 60: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:59:32,025 INFO L290 TraceCheckUtils]: 61: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,025 INFO L290 TraceCheckUtils]: 62: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,026 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,026 INFO L290 TraceCheckUtils]: 64: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,030 INFO L290 TraceCheckUtils]: 65: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= 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) (= (mod main_~d~0 2) 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; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,030 INFO L290 TraceCheckUtils]: 66: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,031 INFO L290 TraceCheckUtils]: 67: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~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; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,031 INFO L290 TraceCheckUtils]: 68: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,031 INFO L272 TraceCheckUtils]: 69: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~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)); {42324#true} is VALID [2022-04-28 10:59:32,031 INFO L290 TraceCheckUtils]: 70: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,031 INFO L290 TraceCheckUtils]: 71: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,031 INFO L290 TraceCheckUtils]: 72: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,032 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #95#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,032 INFO L272 TraceCheckUtils]: 74: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~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)); {42324#true} is VALID [2022-04-28 10:59:32,032 INFO L290 TraceCheckUtils]: 75: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,032 INFO L290 TraceCheckUtils]: 76: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,033 INFO L290 TraceCheckUtils]: 77: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,033 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #97#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,033 INFO L272 TraceCheckUtils]: 79: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 10:59:32,033 INFO L290 TraceCheckUtils]: 80: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 10:59:32,033 INFO L290 TraceCheckUtils]: 81: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 10:59:32,033 INFO L290 TraceCheckUtils]: 82: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 10:59:32,034 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #99#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,034 INFO L272 TraceCheckUtils]: 84: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 10:59:32,035 INFO L290 TraceCheckUtils]: 85: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:59:32,035 INFO L290 TraceCheckUtils]: 86: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,035 INFO L290 TraceCheckUtils]: 87: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 10:59:32,036 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #101#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,036 INFO L290 TraceCheckUtils]: 89: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,039 INFO L290 TraceCheckUtils]: 90: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,043 INFO L290 TraceCheckUtils]: 91: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,044 INFO L290 TraceCheckUtils]: 92: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 10:59:32,046 INFO L290 TraceCheckUtils]: 93: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 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; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 10:59:32,047 INFO L290 TraceCheckUtils]: 94: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !false; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 10:59:32,048 INFO L290 TraceCheckUtils]: 95: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !(0 != ~b~0); {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 10:59:32,050 INFO L272 TraceCheckUtils]: 96: Hoare triple {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} 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)); {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 10:59:32,051 INFO L290 TraceCheckUtils]: 97: Hoare triple {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {42634#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 10:59:32,051 INFO L290 TraceCheckUtils]: 98: Hoare triple {42634#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {42325#false} is VALID [2022-04-28 10:59:32,051 INFO L290 TraceCheckUtils]: 99: Hoare triple {42325#false} assume !false; {42325#false} is VALID [2022-04-28 10:59:32,052 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 71 proven. 76 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-28 10:59:32,052 INFO L328 TraceCheckSpWp]: Computing backward predicates...